ฉันเพิ่งอัพเกรดจาก Mavericks เป็น Yosemite และตอนนี้curl
ไม่เห็นชื่อโฮสต์ลูปแบ็ค
ตั้งค่าเซิร์ฟเวอร์ http ง่ายๆเพื่อทดสอบ:
$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...
ตอนนี้ฉันสามารถไปที่ localhost: 8000 ในโครเมี่ยม ฉันยังสามารถรับมันได้ แต่ในขดนี้เกิดขึ้น:
$ curl localhost:8000
curl: (7) Failed to connect to localhost port 8000: Connection refused
อย่างไรก็ตามการทำงานนี้:
$ curl 127.0.0.1:8000
ฉันอ่านคำตอบนี้เกี่ยวกับการตั้งค่าพร็อกซี่ wgetแต่มันไม่ได้ช่วยเพราะสิ่งนี้ใช้ได้:
$ wget --proxy=off localhost:8000
มันน่าผิดหวังจริง ๆ เพราะฉันมีชื่อโฮสต์ลูปแบ็คที่แตกต่างกันสองสามรายการใน/etc/hosts
ไฟล์ของฉันดังนั้นฉันจึงสามารถพัฒนาแอปในเครื่องได้และฉันก็เคยแก้จุดบกพร่องด้วยการม้วน
ฉันได้ลองกับเวอร์ชั่นของ curl ที่มาพร้อมกับ osx:
$ curl --version
curl 7.37.1 (x86_64-apple-darwin14.0) libcurl/7.37.1 SecureTransport zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate IPv6 Largefile NTLM NTLM_WB SSL libz
$ curl localhost:8000
curl: (7) Failed to connect to localhost port 8000: Connection refused
$ curl 127.0.0.1 # works
และฉันได้พยายามรวบรวม curl กับ brew:
$ /usr/local/Cellar/curl/7.38.0/bin/curl --version
curl 7.38.0 (x86_64-apple-darwin14.0.0) libcurl/7.38.0 SecureTransport zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
Features: IPv6 Largefile NTLM NTLM_WB SSL libz
$ /usr/local/Cellar/curl/7.38.0/bin/curl localhost:8000
curl: (7) Failed to connect to localhost port 8000: Connection refused
$ /usr/local/Cellar/curl/7.38.0/bin/curl 127.0.0.1:8000 # works