Net :: HTTP.start适用于127.0.0.1但不适用于'localhost'。为什么?

时间:2010-07-21 15:46:57

标签: ruby

>>  Net::HTTP.start("127.0.0.1", 3000) { |http| http.get('/') }
=> #<Net::HTTPFound 302 Found  readbody=true>

>>  Net::HTTP.start("localhost", 3000) { |http| http.get('/') }
Errno::ECONNREFUSED: Connection refused - connect(2)

Localhost在/ etc / hosts中注册如下:

127.0.0.1       localhost

Telnet以解决两个问题。所以我认为错误可能出现在Net :: HTTP实现中。

$ ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [x86_64-linux]

有人知道我能做什么吗?

1 个答案:

答案 0 :(得分:2)

如果localhost实际解析为IPv6地址,则会出现这种情况。