SimpleHTTPServer:其他设备无法连接到服务器

SimpleHTTPServer: other devices can't connect to the server

最近我一直在玩 Python 以发现它的潜力,我偶然发现了 SimpleHTTPServer。

我在 Windows 10.

我运行:

python -m SimpleHTTPServer

输出为:

Serving HTTP on 0.0.0.0 port 8000 ... 

我在智能手机和平板电脑上都打开了浏览器,但是当我输入“http://127.0.0.1:8000”时,其中 none 个可以连接到服务器。

(翻译自意大利语,可能不是准确的翻译)

iPad: "Safari can't open the page because the server has stopped responding"

Android: "WebPage does not respond. the webpage may be temporarily not available or it could have been moved to another address"

为什么不起作用?我该如何解决这个问题?

127.0.0.1 始终是本地系统的 IP 地址(其关联的主机名是 "localhost")。换句话说,如果您在平板电脑或 Android 设备上键入 127.0.0.1:8000,该设备上的浏览器将尝试连接到同一设备上的服务器 运行,侦听端口 8000。您需要找出您 运行 Python 所在计算机的 IP 地址,然后键入该地址。您可以在 Unix 上使用 ifconfig 命令,或在 Windows.

上使用 ipconfig

可能您的防火墙阻止访问基于 python 的服务器

试试这个:

  • 开启windows防火墙
  • 点击打开的window左侧的"allow an app or feature..."
  • 在列表中搜索 python 并勾选私有和 public

现在应该可以了