Ich habe gerade ein Upgrade von Mavericks auf Yosemite durchgeführt und curl
kann jetzt keine Loopback-Hostnamen mehr sehen.
Richten Sie einen einfachen HTTP-Server zum Testen ein:
$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...
Jetzt kann ich localhost treffen: 8000 in Chrom. Ich kann es sogar wget. Aber im Curl passiert Folgendes:
$ curl localhost:8000
curl: (7) Failed to connect to localhost port 8000: Connection refused
Dies funktioniert jedoch:
$ curl 127.0.0.1:8000
Ich habe diese Antwort über die wget-Proxy-Einstellungen gelesen , aber es hat nicht geholfen, da dies funktioniert:
$ wget --proxy=off localhost:8000
Dies ist sehr frustrierend, da in meiner /etc/hosts
Datei einige verschiedene Loopback-Hostnamen aufgeführt sind, damit ich Apps lokal entwickeln kann, und ich bin es gewohnt, sie mit Curl zu debuggen.
Ich habe es mit der mit osx gelieferten Version von curl versucht:
$ 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
Und ich habe versucht, Curl mit Brew zu kompilieren:
$ /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