2015-07-15 6 views
0

В соответствии с этим post, чтобы получить доступ к локальному серверу с другого компьютера в той же сети, вам необходимо использовать 0.0.0.0:3000 в качестве адреса для localhost в рельсах 4.2. Если я запускаю сервер с rails s -b 0.0.0.0 -p 3000, я действительно могу получить доступ с другого компьютера, используя IP-адрес хоста, а затем: 3000. Однако активы не отображаются. Я попытался установить config.asset_host = '0.0.0.0:3000' в development.rb и перезапустить сервер, но это не поможет.Доступ к локальному хосту с другого компьютера в сети в рельсах 4.2

Итак, как мне загружать активы с удаленной машины? Консоль показывает следующие ошибки

GET http://localhost:3000/assets/application.css net::ERR_CONNECTION_REFUSED 
192.168.0.57/:24 
GET http://localhost:3000/assets/application.js net::ERR_CONNECTION_REFUSED 
192.168.0.57/:83 
GET http://localhost:3000/assets/infographic.png net::ERR_CONNECTION_REFUSED 
192.168.0.57/:106 
GET http://localhost:3000/assets/analysis-thumb.png net::ERR_CONNECTION_REFUSED 
192.168.0.57/:121 
GET http://localhost:3000/assets/chart-thumb.png net::ERR_CONNECTION_REFUSED 
localhost:3000/images/favicon.ico:1 
GET http://localhost:3000/images/favicon.ico net::ERR_CONNECTION_REFUSED 
gingerEditor.min.js:21 
Running Ginger Widget version 0.1.0.585 
localhost:3000/images/favicon.ico:1 
GET http://localhost:3000/images/favicon.ico net::ERR_CONNECTION_REFUSED 

В этом случае хост-машина была в 192.168.0.57:3000. Журнал сервера говорит страница загружается на 192.168.0.9 т.е. Started GET "/" for 192.168.0.9

+0

Почему бы вам не попробовать привязку к IP-адресу хоста вместо 0.0.0.0, т.е. rails s -b -p 3000 – Ojash

+0

Я пробовал это, спасибо, но активы все еще не загружаются. – Obromios

+0

Попробуйте вызвать непосредственно файл с несколькими файлами на удаленном сервере, возможно, если вы запустите в рабочей среде, ваш веб-сервер не будет обслуживать статические активы .... –

ответ

1

Я решил это, установив config.asset_host на адрес главной машины. Так что, если хозяин машины 192.168.0.17 то в config/development.rb вы хотите следующую строку:

config.asset_host = '192.168.0.17:3000' 

Это не идеально, это означает, что вы должны изменить файл development.rb каждый раз, когда вы хотите, чтобы открыть свой сервер разработки путем его связывания до 0.0.0.0:3000.

1

Если у вас есть LINUX или UNIX дистрибутивом, открытый терминал и ударил

ifconfig 

Затем найти инет адрес, как например.

inet 192.168.0.113 netmask 0xffffff00 broadcast 192.168.0.255 

Затем с другой машины в той же сети, вы можете нажать ниже в браузере

192.168.0.113:3000 

Теперь вы будете иметь возможность запускать приложения из другой машины.

Надеюсь, это поможет вам.

+0

Я пробовал, что и сайт загружается, но нет. – Obromios

+0

делают это в 'development env'? попробуйте использовать этот 'config.serve_static_assets = true' в' development.rb'. – RockStar

+0

Я попробовал config.serve_static_assets = true, но это не помогло. – Obromios