Nuovo progetto Rails generato 4.2.0. Ran rails s
, comportati come previsto utilizzando WEBrick:Perché Puma è vincolante solo per tcp6? (via `rails s`)
[email protected]:~$ netstat -nlpt
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:3000 0.0.0.0:* LISTEN 27158/ruby2.1
tcp6 0 0 ::1:3000 :::* LISTEN 27158/ruby2.1
Aggiunto puma a Gemfile, corse bundle, quindi rails s
di nuovo; è venuto con Puma, ma solo interfaccia tcp6 vincolato, non tcp:
[email protected]:~$ netstat -nlpt
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 ::1:3000 :::* LISTEN 27116/ruby2.1
Qualsiasi indizio perché? Ho cercato su google senza fortuna.
UPDATE:
Esecuzione puma -b tcp://0.0.0.0:3000
opere. Tuttavia, aggiungendo la direttiva si legano a config/puma.rb e funzionante rails s
non si:
bind 'tcp://0.0.0.0:3000'
i fili/lavoratori direttive nel mio file di configurazione stanno lavorando, però, quindi so il file di configurazione è sempre caricato e Usato. (Anche aggiunto un'affermazione di puts per essere sicuro.)
Il file di configurazione viene persino prelevato se eseguo appena puma
, il binding all'interfaccia corretta. Potrei dover ricorrere a puma
anziché a rails s
, anche se è fastidioso e deve essere aggiunto ai miei documenti degli sviluppatori.
UPDATE2:
mi sbagliavo. L'esecuzione di rails s
non preleva automaticamente config/puma.rb. Ancora indagando ...
Questo non è più un problema per me perché ho deciso di usare 'puma' per eseguire l'app rails invece di' rails s', il che rende tutto funzionante, anche se continuo a pensare che questo problema dovrebbe essere risolto. Il motivo per cui devo passare a 'puma' è che il file di configurazione viene prelevato: http://stackoverflow.com/questions/25225444/how-to-run-rails-puma-server-with-config-file-using -rails-s-puma – odigity
Un'altra soluzione, se si utilizza questo dietro un proxy inverso Apache/nginx è solo per utilizzare l'indirizzo IPv6. – luismreis