Бауэр называет заблокирован корпоративный прокси
Я пытаюсь использовать Bower для веб-приложения, но обнаружил, что попал в какие-то проблемы с прокси:
D:>bower search jquery
bower retry Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 1.2s
bower retry Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 2.5s
bower retry Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 6.8s
bower retry Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 15.1s
bower retry Request to https://bower.herokuapp.com/packages/search/jquery failed with ECONNRESET, retrying in 20.3s
bower ECONNRESET Request to https://bower.herokuapp.com/packages/search/jquery failed: tunneling socket could not be established, cause=Parse Error
соответствующие пункты:
- Я могу перейти к https://bower.herokuapp.com/packages/search/jquery и он возвращает полный ответ json.
- Я могу использовать git для клонирования, как с помощью протокола git://, так и http(s).
- Я могу использовать NPM напрямую без этих проблем
- Я пробовал использовать скрипач, чтобы определить, что блокируется, но он не обнаруживает никаких вызовов от команды Bower. Я вижу вызовы из команд NPM в Fiddler.
- Я искал список проблем Bower, видел похожие проблемы, но у них либо нет решения, либо он не кажется таким же, как у меня.
какие идеи?
15 ответов:
спасибо @user3259967
Это сделало работу.
Я хотел бы добавить, что если вы находитесь за прокси, который должен пройти проверку подлинности, вы можете добавить имя пользователя/пароль .bowerrc.
{ "directory": "library", "registry": "http://bower.herokuapp.com", "proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/", "https-proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/" }
обратите внимание на использование http:// на https-proxy
решение для меня этот конфиг .bowerrc
{ "directory": "vendor", "registry": "http://bower.herokuapp.com", "proxy": "http://<user>:<pwd>@proxy.host.br:8080", "https-proxy": "http://<user>:<pwd>@proxy.host.br:8080", "strict-ssl": false }
использование протокола http в записи реестра https-proxy plus с протоколом http.
Не забудьте изменить номер порта 8080 на любой ваш прокси-сервер порт.
вы за прокси?
вы настроили переменные среды HTTP_PROXY и HTTPS_PROXY?
SET HTTP_PROXY=http://yourproxyserver:yourproxyport SET HTTPS_PROXY=http://yourproxyserver:yourproxyport
У меня не было .файл bowerrc для настройки моих настроек bower. Я нашел настройки, живущие в файле под названием по умолчанию.js. найдено под " C:\...\беседки\папки node_modules\Бауэр-конфиг\Либ\утиль\по умолчанию.js"
Я надеюсь, что это помогает другим:var defaults = { 'cwd': process.cwd(), 'directory': 'bower_components', 'registry': 'http://bower.herokuapp.com', 'shorthand-resolver': 'git://github.com/{{owner}}/{{package}}.git', 'tmp': paths.tmp, 'proxy': '<<http://user:pass@proxy:port>>', // change proxy here or at the top 'https-proxy': '<<http://user:pass@proxy:port>>', // change proxy here or at the top 'timeout': 30000, 'ca': { search: [] }, 'strict-ssl': false, 'user-agent': userAgent, 'color': true, 'interactive': null, 'storage': { packages: path.join(paths.cache, 'packages'), links: path.join(paths.data, 'links'), completion: path.join(paths.data, 'completion'), registry: path.join(paths.cache, 'registry'), empty: path.join(paths.data, 'empty') // Empty dir, used in GIT_TEMPLATE_DIR among others } }; module.exports = defaults;
вы можете попробовать предложить @thebignet в тот же вопрос GitHub
Set
proxy
,https-proxy
иstrict-ssl
настройка в.bowerrc
File:{ "proxy" : "http://<host>:<port>", "https-proxy" : "http://<host>:<port>", "strict-ssl" : false }
но вы должны выполнить команду из терминала:
git config --global url."https://".insteadOf git://
на Win 7.
что работало для меня, ниже шаги, как предложено на этой ссылка-читать #nanowizard ответ.
на
.bowerrc
file, удалите все настройки http_proxy / https_proxy, которые вы могли бы сделать это и раньше. Это очень важно. Поэтому окончательное содержание этого файла должно выглядеть так: -{ "directory": "app/bower_components" }
установите переменные среды на вашем ПК -
http_proxy
иhttps_proxy
к вашему корпоративному прокси-брандмауэр. В случае, если ваш корпоративный прокси требует аутентификации и если ваш пароль содержит специальные символы, преобразовать его в hex виде как было предложено этой ссылка. Как и в моем случае побег символов с '\' не помог. Также мне пришлось перезагрузить систему.Примечание. : http_proxy и https_proxy должны содержать один и тот же прокси-адрес, как показано ниже
http_proxy = http://<user>:<password>@<your company proxy>:<port> https_proxy= http://<user>:<password>@<your company proxy>:<port> ->Note no 's' in http://...
Я за корпоративным брандмауэром, и я должен указать доменное имя тоже. Ни один из этих ответов не работал для меня. Вот что я сделал -
- скачал CNTLM из http://cntlm.sourceforge.net/
- очевидно, что установил его.
откройте cntml.ini и измените следующие
домен your_domain_name
имя пользователя your_domain_username
пароль your_domain_passowrd
PassLM 1AD35398BE6565DDB5C4EF70C0593492 (раскомментируйте это)
PassNT 77B9081511704EE852F94227CF48A793 (раскомментируйте это тоже)
Прокси http://localhost:8888
перейти к службам.msc и запустите службу проверки подлинности CNTLM.
- скачать Fiddler 4/2 (как бы они это ни называли).
- установите это тоже. Это будет работать в http://localhost:8888
- Теперь любая программа, которую вы запускаете вперед (прокси) это http://locahost:3128 (это то, что CNTLM работает.)
в этом случае укажите http.прокси и HTTPS.прокси как http://localhost:8888
Это будет работать для других клиентских программ. Просто укажите прокси как http://localhost:8888
его работа для меня изменение .bowerrc file
{ "directory": "client/lib", "registry": "http://bower.herokuapp.com", "proxy":"http://192.168.1.205:3228", "https-proxy":"http://192.168.1.205:3228" }
- где клиент / lib-каталог установки, где вы хотите установить
- и http://192.168.1.205:3228 это ваш прокси-ip с портом. корпоративный прокси может отличаться в зависимости от организации.
В дополнение к установке ниже прокси в
.bowerrc
:{ "directory": "app/bower_components", "proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>", "https-proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>", "http-proxy":"http://<user>:<password>@proxy.company.com:<proxy-port>", "strict-ssl": false, "registry": "http://bower.herokuapp.com" }
Я должен выполнить следующие команды, чтобы исправить эту проблему:
npm cache clean bower cache clean bower install
{ "directory": "library", "registry": "http://bower.herokuapp.com", "proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/", "https-proxy":"http://<USERNAME>:<PASSWORD>@<PROXY_IP>:<PROXY_PORT>/" }
этот код работал для меня. Я использую Win 7 и chrome, а также git bash. Вот несколько вещей, которые должны быть очищены. Это занимает у меня огромное время, чтобы найти фактические данные, касающиеся имени пользователя, пароля, прокси-IP и порта. Я опишу его шаг за шагом, чтобы каждый ученик мог легко понять сообщение:
- создать файл в блокноте с именем .bowerrc в папке входа; вы можете перейти туда, введя в меню Пуск>Выполнить>%UserProfile% и нажмите ЛАДНО.
введите выше код в поле .bowerrc файл со следующими изменениями:
заменить
<USERNAME>
С вашим ID пользователя подключения к интернету или ID входазаменить
<PASSWORD>
С помощью пароля для подключения к интернету или пароля для входа в систему.
Заменить<PROXY_IP>
и<PROXY_PORT>
С рабочим IP-адресом прокси и его номером порта.**Note: There should be no angle brackets.**
Прокси-IP должен отличаться от вашего собственного IP.
перед через любой прокси IP и порт вы должны проверить его работоспособность путем смены прокси IP и порт.
вы можете перейти по этой ссылке, чтобы узнать подробности настроек прокси-сервера в описание здесь
- из этих настроек прокси вы получите Прокси IP и порт.
- перепроверьте все входные данные, чтобы все были правильными и сохраните и закройте файл.
- откройте git bash и измените каталог на файл проекта и введите команду и нажмите enter, в моем случае, Git bash command:
a@a-PC MINGW32/d / путаница
$ bower install
- это сработало как по волшебству.
в случае, если это кому-то поможет, у меня была ошибка "bower blocked by group policy".
решение состояло в том, чтобы сделать исключение в CryptoPrevent, приложение, установленное на компьютерах нашей компании, чтобы предотвратить крипто шкафчики.
для информации, в вашем .файл bowerrc можно добавить атрибут no-proxy. Я не знаю, с каких пор он поддерживается, но он работает на bower 1.7.4 и решает проблему bower за корпоративным прокси с внутренним репозиторием
.bowerrc :
{ "directory": "bower_components", "proxy": "http://yourProxy:yourPort", "https-proxy":"http://yourProxy:yourPort", "no-proxy":"myserver.mydomain.com" }
в отношении