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与树莓上的工头一起运行在家庭网络中无法访问的主要内容,如果未能解决你的问题,请参考以下文章

如何实现流媒体引擎,以便家庭网络上的树莓派视频流可以公开

与Sinatra一起设计

Node.js 应用程序适用于工头,但不适用于 heroku。 404 错误

HTTP更改变量并重新加载Sinatra

将 Sinatra 与acts_as_audited 一起使用的任何示例?

智慧家庭 - HA(1) - 在树莓派上架设 Home Assistant