2014-12-28 26 views
11

Recentemente ho aggiornato il mio rotaie 4.1.8 a 4.2Rails 4.2 server; IP privato e pubblico non funziona

io non sono in grado di accedere rotaie app utilizzando IP privato 192.168.1.x:3000 e anche con la mia public-ip address.

App Rails funziona con lvh.me:3000, 0.0.0.0:3000, localhost:3000 e 127.0.0.1:3000. Ma sembra che tutti gli indirizzi puntino a 127.0.0.1:3000 nel mio registro del server rails-issue.

Si stava lavorando bene in 4.1

Ho provato ad aggiungere in seguito a environments/development.rb, ma nulla è cambiato.

TRUSTED_PROXIES = %r{ 
    ^127\.0\.0\.1$    | # localhost 
    ^(10       | # private IP 10.x.x.x 
    172\.(1[6-9]|2[0-9]|3[0-1]) | # private IP in the range 172.16.0.0 .. 172.31.255.255 
    192\.168      # private IP 192.168.x.x 
    )\. 
}x 

config.action_dispatch.trusted_proxies = /^127\.0\.0\.1$/ # localhost 

Sto provando a puntare il mio server locale all'indirizzo IP pubblico. Ho già configurato port forwarding per accedere in un indirizzo pubblico.

risposta

16

L'host predefinito per i server Rails è stato modificato in 4.2. Ora funziona su localhost, il che significa che accetterà solo le connessioni dall'IP dell'host. Avrai bisogno di eseguire rails server -b 0.0.0.0 per avviare il tuo server.

Vedere the 4.2 release notes, section 3.3 for more details.

+0

Grazie @pluto. Sta funzionando!!. Avrei dovuto leggere correttamente. –

+0

c'è comunque dove puoi fare questo standard con 4.2.0. è fastidioso scriverlo in ogni momento. –

2

per l'esecuzione come pubblico -b e in una porta specifica utilizzare -p:

rails server -b 0.0.0.0 -p 8520