Подтвердить что ты не робот

Беседа за прокси

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 и bower clean cache.

4b9b3361

Ответ 1

Измените файл .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, вы можете создать его самостоятельно.

Ответ 2

У меня проблема с командой bower list, которая была вызвана тем, что bower использует 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 unset_proxy. С помощью автозаполнения Bash мне даже не нужно вводить эти команды, но пусть вкладка завершит их для меня.

Ответ 3

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

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

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

Ответ 4

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