2015-11-07 2 views
3

У меня есть приложение rails, которое использует private_pub. Почему-то я не могу подключить мое приложение к private_pub.Приложение Rails не может подключиться к private_pub на Vagrant

Есть ли способ связать private_pub с 0.0.0.0?

Run рельсам сервер

[email protected]:/vagrant$ rails s -b 0.0.0.0 
=> Booting Thin 
=> Rails 4.2.2 application starting in development on http://0.0.0.0:3000 
=> Run `rails server -h` for more startup options 
=> Ctrl-C to shutdown server 
Thin web server (v1.6.2 codename Doc Brown) 
Maximum connections set to 1024 
Listening on 0.0.0.0:3000, CTRL+C to stop 

Start private_pub

[email protected]:/vagrant$ rackup private_pub.ru -s thin -E production 
Thin web server (v1.6.2 codename Doc Brown) 
Maximum connections set to 1024 
Listening on localhost:9292, CTRL+C to stop 

Chrome журнала консоли

http://localhost:9292/faye/faye.js net::ERR_EMPTY_RESPONSE 

ответ

2

Да, есть способ, это задокументированная функция. Из документов:

сервер: URL-адрес, используемый для сервера Faye, например http://localhost:9292/faye.

так что вы можете настроить config/private_pub.yml для окружающей среды, что вам нужно, как это:

development: 
    server: "http://0.0.0.0:9292/faye" 
    secret_token: "secret" 

Затем запустите сервер с:

thin -C config/private_pub.yml -p 9292 start 
Using rack adapter 
Thin web server (v1.6.4 codename Gob Bluth) 
Maximum connections set to 1024 
Listening on 0.0.0.0:9292, CTRL+C to stop 

Я на самом деле не знаю, почему это Безразлично» t поймать номер порта (I opened the issue in github), поэтому я указал его явно.

Второй вариант заключается в установке хост для rackup команды (так как в этом случае он не обрабатывает адрес):

rackup private_pub.ru -s thin -E production -o 0.0.0.0 
Thin web server (v1.6.4 codename Gob Bluth) 
Maximum connections set to 1024 
Listening on 0.0.0.0:9292, CTRL+C to sto 

Вы также можете явно указать как адрес и порт для thin (а также для rackup) и опустить конфигурационный файл на всех (вероятно, не очень хорошая идея, так как есть secret_token и signature_expiration опции в конфигурационном файле, который должен быть установлен):

thin -a 0.0.0.0 -p 9292 start 
Using rack adapter 
Thin web server (v1.6.4 codename Gob Bluth) 
Maximum connections set to 1024 
Listening on 0.0.0.0:9292, CTRL+C to stop 
+0

Просто пробегают Тхи с. Детали, приведенные выше, @rustam работают очень хорошо. Но я столкнулся с ошибкой соединения faye в браузере. Чтобы исправить это, 1. установите IP-адрес частной сети на свой Vagrant conf 2. на private_pub.rb используйте IP-адрес частной сети в конфигурации сервера – steamboy

Смежные вопросы