- curl |
- |
نصائح أخرى
وأنا واجهت نفس المشكلة لأنني تعيين متغيرات بيئة http_proxy وhttps_proxy. ولكن في بعض الأحيان، والاتصال بشبكة مختلفة وتحتاج لتجاوز البروكسي مؤقتا. أسهل طريقة للقيام بذلك (بدون تغيير متغيرات البيئة) هي:
curl --noproxy '*' stackoverflow.com
ومن دليل: <م> ". والبدل الوحيد هو * حرف واحد، والذي يطابق كل الجنود وفعال تعطيل الوكيل" م>
ونقلت الحرف * بحيث لا يتم توسيعه عن طريق الخطأ من قبل قذيفة.
وتسديدة طويلة ولكن في محاولة وضع الوكيل إلى "" (سلسلة فارغة) التي يجب تجاوز أي إعدادات الوكيل وفقا لصفحة الرجل.
أولا، أنا المدرجة الوكيل الحالي مع وضع
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
ولقد تم تعريف 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"
}
وهذا يعمل على ما يرام، تعيين سلسلة وكيل ل""
curl -x "" http://www.stackoverflow.com
ويجب عليك استخدام متغير $no_proxy
الحياة الفطرية (أقل حدة). يرجى الرجوع إلى https://wiki.archlinux.org/index.php/proxy_settings للحصول على أمثلة .
وبالإضافة إلى ذلك، كان هناك خلل في وقت طويل حليقة قبل http://sourceforge.net/ ع / حليقة / البق / 185 / أو ربما كنت تستخدم نسخة قديمة حليقة يتضمن هذا الخطأ.
واضافة تفضيلات الوكيل في .curlrc
proxy = 1.2.3.4
noproxy = .dev,localhost,127.0.0.1
وهذا جعل كل المجالات ديف وطلب الجهاز المحلي تتجاهل الوكيل.
والجواب عرجاء ولكن: تذكر أن تأكد من تعيين أي وكيل في ملف ~/.curlrc
(...)
في حالتي (ماك، curl 7.54.0
)، ولدي أدناه بالوكالة مع مجموعة ~/.bash_profile
$ env |grep -i proxy |cut -d = -f1|sort
FTP_PROXY
HTTPS_PROXY
HTTP_PROXY
NO_PROXY
PROXY
ftp_proxy
http_proxy
https_proxy
no_proxy
ولسبب غير معروف، هذا الإصدار من curl
لا يمكن أن تعمل مع متغيرات البيئة NO_PRXY
وno_proxy
بشكل صحيح، ثم إلغاء تعيين متغيرات البيئة وكيل واحدا تلو الآخر، حتى لكلا HTTPS_PROXY
وhttps_proxy
.
unset HTTPS_PROXY
unset https_proxy
ويبدأ العمل ويمكن الاتصال عناوين داخلية
وهكذا أنصح إلغاء تعيين كل المتغيرات وكيل إذا كان لديك في البيئة الخاصة بك كحل مؤقت.
unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY
وبلدي حليقة لم تتجاهل الوكيل على أوبونتو 12.04 حتى أنا وضعت "no_proxy" (صغيرة) متغير البيئة. وكان الخيار --noproxy غير متوفر.