2010-07-21 3 views
2
>> 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 est enregistré dans/etc/hosts comme suit:Net :: HTTP.start fonctionne avec 127.0.0.1 mais pas avec 'localhost'. Pourquoi?

127.0.0.1  localhost 

Telnet aux deux œuvres d'adresse. Donc je pense que l'erreur pourrait être dans l'implémentation Net :: HTTP.

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

Est-ce que quelqu'un sait ce que je peux faire?

+2

Est-ce que "localhost" résout l'adresse ipv6? – mwalker

+1

MWalker, vous avez raison! Voulez-vous le faire comme une réponse, alors je l'ai choisi comme la bonne réponse? – robertokl

Répondre

2

Ce serait le cas si localhost résout réellement à l'adresse IPv6.

+2

La réponse a été ajoutée en fonction des commentaires de @ mwalker pour obtenir une réponse réelle à cette question, mais marquée comme wiki de la communauté afin de ne pas prendre trop de crédit. – Phrogz

+0

Comment arrêtez-vous localhost de résoudre à l'adresse IPv6? –

Questions connexes