2014-02-11 4 views
48

bower install за прокси сбой в тайм-аут со следующими параметрами (некоторый набор бесполезны ...):становой за прокси

git config --global http.proxy fr-proxy.example.com:3128 
git config --global https.proxy fr-proxy.example.com:3128 

export http_proxy=http://fr-proxy.example.com:3128 
export https_proxy=http://fr-proxy.example.com:3128 

npm config set proxy http://fr-proxy.example.com:3128 
npm config set https-proxy http://fr-proxy.example.com:3128 

npm config set registry http://registry.npmjs.org/ 

Я также попробовал установить/удалить из дачей и bower clean cache.

+1

Возможный дубликат [настройки прокси-сервера bower] (http://stackoverflow.com/questions/18359887/bower-proxy-configuration) –

+0

Хорошая компиляция всего, что мы должны сделать, чтобы все работало! Отличная работа! : +1: – IcyFlame

ответ

96

Редактировать файл .bowerrc и добавить требуемая конфигурация прокси:

{ 
    "proxy":"http://<host>:<port>", 
    "https-proxy":"http://<host>:<port>" 
} 

Если вы работаете за аутентифицированным прокси, пользователь и пароль должны быть включены как это:

{ 
    "proxy":"http://<user>:<password>@<host>:<port>", 
    "https-proxy":"http://<user>:<password>@<host>:<port>" 
} 

Обычно, .bowerrc находится рядом с bower.json. И если нет файла .bowerrc рядом с файлом bower.json, вы можете создать его самостоятельно.

+13

Просто создайте файл .bowerrc в каталоге пользователя * ~/.bowerrc * – nottinhill

+9

Вы также можете сделать это на Windows в C: \ Users \ {Username} \. Bowerrc –

+1

@rmic, как найти и в окнах –

6

Мой скрипт (с использованием git bash в Windows) для установки прокси был выполнен другим пользователем из того, что я использовал для беседки. Переменные среды не учитывались.

Так следующие настройки достаточно, как указано в других ответах:

export http_proxy=http://fr-proxy.example.com:3128 
export https_proxy=http://fr-proxy.example.com:3128 
0

Если у вас установлена ​​ОС Linux или OS X попробовать следующую команду, bash http_proxy='proxy server' https_proxy='proxy server' bower

29

У меня есть проблема с bower list команды, которая была вызвана тем, что становой использовать git с git:// URL, чтобы получить список удаленных репозиториев GitHub, но git:// протокола блокируется нашим корпоративным брандмауэром. Чтобы решить эту проблему в дополнение к настройке переменных среды, я должен добавить дополнительные настройки для git. Вот полный список команд, которые я должен выполнить (не забудьте заменить прокси-сервера и порт с вашими):

# set proxy for command line tools 
export HTTP_PROXY=http://localhost:3128 
export HTTPS_PROXY=http://localhost:3128 
export http_proxy=http://localhost:3128 
export https_proxy=http://localhost:3128 

# add configuration to git command line tool 
git config --global http.proxy http://localhost:3128 
git config --global https.proxy http://localhost:3128 
git config --global url."http://".insteadOf git:// 

Стандартные переменные среды в Bash создаются в верхнем регистре, для прокси те HTTP_PROXY и HTTPS_PROXY, но некоторые инструменты ожидать от них быть в нижнем регистре, беседка - один из этих инструментов. Вот почему я предпочитаю устанавливать прокси в двух случаях: ниже и выше.

Bower использует git для получения пакетов от GitHub, поэтому ключи конфигурации необходимо добавить в git. http.proxy и https.proxy являются настройками прокси-сервера и должны указывать на ваш прокси-сервер. И последнее, но не менее важное: вам нужно сказать git, чтобы не использовать протокол git://, поскольку он может быть заблокирован брандмауэром. Вам необходимо заменить его стандартным протоколом http://. Кто-то предлагает использовать https:// вместо git://, как показано ниже: git config --global url."https://".insteadOf git://, но я получал ошибку Connection reset by peer, поэтому я использую http://, который отлично работает для меня.

Дома я не пользуюсь прокси-сервером и не имею корпоративного брандмауэра, поэтому предпочитаю переключиться на «обычные» настройки без прокси-сервера. Вот как я это делаю:

# remove proxy environment variables 
unset HTTP_PROXY 
unset HTTPS_PROXY 
unset http_proxy 
unset https_proxy 
# remove git configurations 

git config --global --unset http.proxy 
git config --global --unset https.proxy 
git config --global --unset url."http://".insteadOf 

Я не очень хорошо запоминают вещи, так что я никогда бы не помнить все эти команды. Вдобавок к этому я ленив и не хочу набирать эти длинные команды вручную. Вот почему я создавал функции для установки и отмены настроек прокси-сервера.Вот 2 функции Я добавил к моему .bashrc файлу после некоторых определений псевдонимов:

set_proxy() { 
    export HTTP_PROXY=http://localhost:3128 
    export HTTPS_PROXY=http://localhost:3128 
    # some tools uses lowercase env variables 
    export http_proxy=http://localhost:3128 
    export https_proxy=http://localhost:3128 
    # config git 
    git config --global http.proxy http://localhost:3128 
    git config --global https.proxy http://localhost:3128 
    git config --global url."http://".insteadOf git:// 
} 
unset_proxy() { 
    unset HTTP_PROXY 
    unset HTTPS_PROXY 
    unset http_proxy 
    unset https_proxy 
    git config --global --unset http.proxy 
    git config --global --unset https.proxy 
    git config --global --unset url."http://".insteadOf 
} 

Теперь, когда мне нужно установить прокси-сервер, я просто выполнить set_proxy команды и дезактивировать unset_proxy команды. С помощью автозаполнения Баша мне даже не нужно вводить эти команды, но пусть вкладка завершит их для меня.

+0

Это исправило это для меня. 'bower search' и' bower install' работали нормально, но 'bower list' был не-go. Следует отметить, что если ваша сеть имеет несколько прокси-серверов, убедитесь, что вы используете тот же прокси-сервер здесь, что и в '~/.bowerrc', или вы получите 503 и/или таймауты подключения! – KingBob

Смежные вопросы