curl не удалось подключиться к порту localhost 80
Мои хосты карты файлов 127.0.0.1
to localhost
.
$ curl -I 'localhost'
curl: (7) Failed to connect to localhost port 80: Connection refused
а то
$ curl -I 127.0.0.1
HTTP/1.1 200 OK
Server: nginx/1.2.4
Date: Wed, 09 Apr 2014 04:20:47 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 23 Oct 2012 21:48:34 GMT
Connection: keep-alive
Accept-Ranges: bytes
в моем файле hosts у меня есть
127.0.0.1 localhost
получается, что curl
команда не распознает записи в /etc/hosts
. Может кто-нибудь объяснить, почему?
обновление: я еще не пробовал это, но я discoved вы можете настроить nginx для ответа на ipv4 и ipv6
4 ответов
Так как у вас есть ::1 localhost
строка в файле hosts, похоже, что curl пытается Использовать IPv6 для контакта с локальным веб-сервером.
поскольку веб-сервер не прослушивает IPv6, соединение не выполняется.
вы можете попробовать использовать до curl
, который должен заставить соединение IPv4, когда оба доступны.
Если кто-то еще сталкивается с этим, и принятый ответ не работает (это не для меня), проверьте, нужно ли указывать порт, отличный от 80. В моем случае я запускал сервер rails в localhost:3000
и просто используя curl http://localhost
, который попал в порт 80.
изменить команду curl http://localhost:3000
это то, что сработало в моем случае.
У меня также была проблема с отказанным соединением на порту 80. Я не использовал localhost.
curl --data-binary "@/textfile.txt" "http://www.myserver.com/123.php"
проблема была в том, что у меня были umlauts äåö в моем текстовом файле.формат txt.