Как заставить curl игнорировать прокси? Настройка $ NO_PROXY, похоже, не работает для меня.Как заставить curl игнорировать прокси?
ответ
Предполагаю, что curl считывает адрес прокси из переменной окружения http_proxy
и что переменная должна сохранять ее значение. Затем в оболочке, например bash, export http_proxy='';
до того, как команда (или в скрипте оболочки) временно изменит ее значение.
(см инструкцию Curl для всех переменных, она смотрит на, под ENVIRONMENT
заголовком.)
Или просто 'unset http_proxy' – joelittlejohn
Одно примечание: есть и другие переменные * _proxy env, такие как' ftp_proxy'. Я думаю, вот полный список https://wiki.archlinux.org/index.php/proxy_settings. – Dmitriusan
Если вы не хотите переопределять http_proxy в каждом конкретном случае, вы можете настроить домены для игнорирования с помощью $ no_proxy, а затем псевдоним вашего curl: alias curl = 'curl --noproxy $ no_proxy' – jdebon
Длинный снимок, но попробуйте установить прокси на "" (пустая строка), которая должна переопределить любые настройки прокси-сервера в соответствии с справочной страницей.
Это не «длинный выстрел» - это правильный способ сделать это. Согласно моей странице man curl (7.15.5, которая не показывает параметр «--noproxy»), -x/- proxy
В '09 все было длинным выстрелом. – Louis
+1, -x "" делает это. --noproxy с подстановочным знаком не работает с моим bash, даже если я цитирую «*» – Eugene
Во-первых, я перечислил текущие настройки с
env | sort | less
прокси (должно быть что-то вроде http_proxy=http://wpad.local.machine.location:port number
)
Затем я попытался установить
export http_proxy=";"
, который дал это сообщение об ошибке:
curl: (5) Couldn't resolve proxy ';'
Пробовал
export http_proxy="" && curl http://servername:portnumber/destinationpath/ -d 55
и это сработало!
PS! Не забудьте установить HTTP-прокси вернуться к своим первоначальным настройкам с
export http_proxy=http://wpad.local.machine.location:port number
Если ваш curl
по крайней мере, версия 7.19.4
, вы могли бы просто использовать --noproxy
флаг.
curl --noproxy "*" http://www.stackoverflow.com
От manual.
curl: option --noproxy: неизвестно –
@RogerNg, если руководство или использование изменилось, так как я ответил на вопрос, не стесняйтесь обновлять ответ или писать самостоятельно. Тем не менее, на момент написания, этот ответ был точным для заданного вопроса. Если ваша установка не ведет себя в соответствии со спецификациями, это еще одна проблема. –
@RogerNg, взглянув на некоторые из ваших недавно опубликованных вопросов здесь, в stackoverflow, вы можете запутать curl с PHP cUrl, что не то же самое. –
Я столкнулся с той же проблемой, потому что задал переменные окружения http_proxy и https_proxy. Но иногда я подключаюсь к другой сети и должен временно отключать прокси-сервер. Самый простой способ сделать это (без изменения переменных среды) является:
curl --noproxy '*' stackoverflow.com
Из инструкции: «только подстановочные является один символ *, который соответствует всем хостам, и эффективно отключает прокси.»
Символ * цитируется так, чтобы оболочка не была ошибочно расширена.
примечание для пользователей furture: Bash расширяет локальные файлы, если я не цитирую * so' curl -noproxy * * "stackoverflow.com' – Adam
Очень полезно и стоит отметить, что это также игнорирует прокси-сервер (SOCKS), который я установил в моем файле .curlrc – MatzFan
Это ответ, который работал для меня с использованием curl версии 7.22.0 – xpereta
My curl не игнорировал прокси-сервер на Ubuntu 12.04, пока не установил переменную среды «no_proxy» (нижний регистр). Опция --noproxy недоступна.
Вы должны использовать переменную env $no_proxy
en (нижний регистр). Для примера см. https://wiki.archlinux.org/index.php/proxy_settings.
Кроме того, была ошибка при скручивании давным-давно http://sourceforge.net/p/curl/bugs/185/, может быть, вы используете древнюю версию curl, которая включает в себя эту ошибку.
У меня есть http_proxy
и https_proxy
. Я не хочу отменять и снова устанавливать те среды , но--noproxy '*'
отлично работает для меня.
curl --noproxy '*' -XGET 172.17.0.2:9200
{
"status" : 200,
"name" : "Medusa",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "1.5.0",
"build_hash" : "544816042d40151d3ce4ba4f95399d7860dc2e92",
"build_timestamp" : "2015-03-23T14:30:58Z",
"build_snapshot" : false,
"lucene_version" : "4.10.4"
},
"tagline" : "You Know, for Search"
}
Lame ответ, но: не забудьте убедиться, что нет прокси не установлен в ~/.curlrc
файл (...).
Добавьте прокси предпочтения в .curlrc
proxy = 1.2.3.4
noproxy = .dev,localhost,127.0.0.1
Это делает все Dev домены и запрос локальной машине игнорировать прокси-сервер.
- 1. curl через синтаксис прокси
- 2. Как заставить div игнорировать?
- 3. Как заставить скрипача действовать как системный прокси?
- 4. Заставить cURL использовать GET для прокси-сервера для запросов HTTP
- 5. Игнорировать HTTP прокси ошибка
- 6. PHP cURL Прокси-запрос
- 7. Использовать прокси с cURL?
- 8. cURL NTLM Прокси-авторизация
- 9. cURL отказывается игнорировать кеш
- 10. pip игнорировать настройки прокси
- 11. cURL Идентификация прокси
- 12. cURL: https через прокси
- 13. Как заставить gcc игнорировать локализацию
- 14. Как заставить BlazeDS игнорировать свойства?
- 15. Как заставить Grails игнорировать .DS_Store
- 16. Как заставить HTTParty игнорировать SSL?
- 17. Как заставить mysql игнорировать значение?
- 18. Как заставить IE игнорировать history.pushState?
- 19. Заставить javadoc игнорировать аннотацию
- 20. Использовать urllib.urlretrieve и игнорировать прокси
- 21. Игнорировать прокси для конкретного запроса
- 22. Urllib2 Кажется, игнорировать настройки прокси
- 23. Как настроить cURL для использования клиентского прокси?
- 24. cURL как прокси, обрабатывать метод HTTPS/CONNECT
- 25. cURL с прокси не работает
- 26. Список прокси .TXT для cURL
- 27. Как заставить Git игнорировать символическую ссылку?
- 28. Как заставить C++ игнорировать неправильный ввод?
- 29. Как заставить MVC игнорировать неопределенные разделы?
- 30. Как заставить DIV игнорировать изменения браузера
Это поможет людям ответить вам, если вы предоставили дополнительную информацию. На какой платформе вы работаете? Где curl получает настройки прокси? Какой протокол (HTTP, FTP)? Какой прокси (HTTP, SOCKS)? Является ли это прозрачным прокси? Можете ли вы показать точный набор команд, которые показывают вашу проблему, вместе с их выходом? –