[英]Cannot access local Sinatra server from another computer on same network
我有一个简单的Sinatra服务器,我通过textmate运行,但我无法从同一网络上的另一台计算机访问。
我在Mac OS 10.8.3上运行Ruby 1.9.3p327和Sinatra 1.4.1。 防火墙已禁用。
我在不同的网络和计算机上测试了相同的场景。
计算机响应简单的ping但当我尝试telnet端口4567时,我无法建立连接。
最近由于安全考虑,Sinatra提交了将开发模式中的默认监听地址从0.0.0.0
更改为localhost
。
为了明确允许从网络访问,您需要以其他模式(例如生产)运行应用程序,或将bind
选项设置为0.0.0.0
。
您可以使用-o
选项使用内置服务器从命令行执行此操作:
$ ./my_sinatra_file.rb -o 0.0.0.0
确保sinatra服务器不仅侦听localhost(127.0.0.1)的ip地址。
我正在寻找一些额外的信息,可以帮助像我这样的人撞墙。
我在Windows机器上,而不是Mac机器上,我不得不向公众打开我正在使用的端口(Sinatra默认为4567)(即使我在大学网络上)。
要在Windows 10中执行此操作:
现在要考虑的另一件事是谁可以访问您的Web服务器。 如果你想要任何人,那就选择公开。 我不确定(并且会喜欢其他人的输入)如何只在同一公共网络上连接设备。 您也可以允许特定的IP,但为此我建议您自己做一些研究。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.