Sinatra APP与树莓上的工头一起运行在家庭网络中无法访问
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sinatra APP与树莓上的工头一起运行在家庭网络中无法访问相关的知识,希望对你有一定的参考价值。
我有个问题。也许这很容易,我只是不介意。我写了一个小的Sinatra(ruby)WebApp。它与美洲狮服务器一起运行,并由工头开始。我现在在我的Raspberry(Raspian stretch)上开始了它。这很有效。
14:28:45 web.1 | started with pid 10847
14:28:52 web.1 | Puma starting in single mode...
14:28:52 web.1 | * Version 3.12.0 (ruby 2.5.1-p57), codename: Llamas in Pajamas
14:28:52 web.1 | * Min threads: 0, max threads: 16
14:28:52 web.1 | * Environment: development
14:28:52 web.1 | * Listening on tcp://localhost:10001
14:28:52 web.1 | Use Ctrl-C to stop
我可以在我的树莓上本地访问它。
curl localhost:10001
这是有效的。
但我也希望用我的PC(家庭网络)来实现它。这不起作用。我可以成功ping树莓。
ping 192.XXX.XXX.XX
但是当我ping它正在运行的端口时,它无法正常工作(也可以尝试使用我的浏览器)。我有一个fritzbox。
ping 192.XXX.XXX.XX:10001
Procfile:
web: bundle exec rackup -p 10001 -s puma
我不确定我做错了什么:-(。
答案
默认情况下,rackup绑定到localhost。你必须告诉它听0.0.0.0
rackup -p 10001 -o 0.0.0.0
要么
rackup -p 10001 --host 0.0.0.0
相关来源:https://github.com/rack/rack/blob/master/lib/rack/server.rb#L56
以上是关于Sinatra APP与树莓上的工头一起运行在家庭网络中无法访问的主要内容,如果未能解决你的问题,请参考以下文章
Node.js 应用程序适用于工头,但不适用于 heroku。 404 错误