私はRailsアプリケーションをローカルに(Thin Server)実行していますが、ブラウザ(localhost:3000)からローカルに接続できますが、curlを使用しようとするとcURLはlocalhostに接続できませんでしたがブラウザは
curl -H 'id:1' -i 'http://localhost:3000/api/data' -v
* Hostname was NOT found in DNS cache
* Trying ::1...
* Adding handle: conn: 0x7fd121808200
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 0 (0x7fd121808200) send_pipe: 1, recv_pipe: 0
* Connection failed
* connect to ::1 port 3000 failed: Connection refused
* Trying fe80::1...
* Connection failed
* connect to fe80::1 port 3000 failed: Connection refused
* Failed to connect to localhost port 3000: Connection refused
* Closing connection 0
curl: (7) Failed to connect to localhost port 3000: Connection refused
これはうまくいきましたが、私は最近Mavericksに更新しました。私はウェブからうまくカールすることもできます。あなたは/ etc/hostsファイルとレポートscutilに触れていないと仮定すると
あなたは 'http://127.0.0.1:3000/api/data'を試すことができますか?何らかの理由でカールがipv6にまっすぐになるように見える... – fvu
ありがとう、それは動作するようです。なぜこれが突然の場合、どんなアイデアですか? – jbeck
私はMacの人ではありませんが、localhostのエントリが/ etc/hostsから消えている可能性があります(localhostという名前をループバックアドレス127.0.0.1にリンクするには '127.0.0.1 localhost'のような行が必要です)その行が存在する場合、resolv.confやhostsファイルやDNSの参照の有無、およびホストの順序など、macが使用するconfirgurationファイルに問題がある可能性があります。 – fvu