Я щойно перейшов від 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 --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
І я спробував скласти кучері з заваром:
$ /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