无法从 PC 访问 Raspberry Pi 中的简单瓶子网页

cannot access a simple bottle web page in Raspberry Pi from PC

我遵循了指南https://bottlepy.org/docs/dev/tutorial.html 在 Raspberry Pi 上使用以下示例

from bottle import route, run
@route('/hello')
def hello():
    return "Hello World!"
run(host='0.0.0.0', port=81, debug=True)

然后我 运行 python 脚本 sudo python hello.py

网页http://<IP address>:81不可用, 其中 <IP address> 是 raspberry pi 的 IP 地址。

运行 sudo netstat --tcp --udp --listening --program

我得到

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name 
tcp   0      0     < IP address >:81        *:*                     LISTEN      26308/python`

您使用了错误的端口。 (看起来您可能已经复制了 bottle "hello world" 示例,但没有理解它在做什么。)要使用端口 81,请进行以下更改:

run(host='0.0.0.0', port=81, debug=True)

或者,只需保持代码原样并在 http://<IP address>:8080/hello

访问它

首选端口 8080 而不是 81 的一个原因是 81 需要 root (sudo)。

iptable 正在阻止端口 81 上的传入流量。

命令后有效 sudo iptables -A INPUT -p tcp --dport 81 -j ACCEPT