如何解决我无法连接到外部设备上的Bottle服务器
我正在尝试使Python中的Bottle服务器正常工作。这是我的代码:
from bottle import route,run,template
from socket import gethostname,gethostbyname
from time import sleep
ip = str(gethostbyname(gethostname()))
@route('/')
def index():
return 'Hello World!'
run(host=ip,port=1234)
我运行此程序,并在运行它的计算机上导航至http://127.0.1.1:1234/
,并显示Hello World!
,显示我的网站。
但是,如果我尝试通过手机或姐姐的Chromebook连接到该网站,则表明该网站拒绝连接。
我曾尝试用str(gethostbyname(gethostname()))
和'0.0.0.0'
替换'localhost'
,但是没有一个起作用。
解决方法
摆脱这一行;没必要:
ip = str(gethostbyname(gethostname()))
使您的run
行看起来像这样:
run(host='0.0.0.0',port=1234)
地址0.0.0.0
的意思是“听所有地址”。
最后,找出运行您的应用程序的主机的网络地址。然后,同一网络上的其他设备应该能够连接到<that ip address>:1234
。如果您拥有可公开路由的地址(或者如果您打算从具有公共地址的路由器转发适当的端口),则不在同一网络上的设备将只能连接到服务。
您将要确保运行您的应用程序的系统没有防火墙规则,否则将无法成功进行连接。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。