Python、uWSGI、NGINX、FLASK 可在 WiFi 上运行,但无法通过蜂窝网络运行

Python, uWSGI, NGINX, FLASK works on WiFi does not over cellular

我正在使用 Digital Ocean 服务器 运行 personal website。该网站运行完美,我对此很满意。我也能够设置 Lets Encrypt 并正常工作(这个问题在设置 Lets Encrypt 之前就存在)。

通过 WiFi。通过蜂窝网络,网站不会加载。但是,如果我将 phone 切换到 WiFi,它就可以正常工作。我真的不知道是什么导致了这个问题。

我的设置非常标准,Python 和 flask,由 nginx 和 uWSGI 提供服务。一切都是使用 this tutorial. I am happy to post nginx config, uwsgi config, etc, and all source for the site is here 设置的。

更新

此问题是由 certbot 中的错误引起的,doesn't handle IPV6 when used on NGINX. This can be fixed by editing the NGINX config and adding the lines in

您的网站同时具有 IPv4 和 IPv6 地址:

$ dig +short A njw.fish
138.197.30.136

$ dig +short AAAA njw.fish
2604:a880:800:10::20c1:d001

这很好,但 nginx 似乎只侦听 IPv4 地址。指示它同时监听:

listen [::]:443 ssl;  # For IPv6
listen 443 ssl;       # For IPv4

可能,您的手机 phone 使用(较新的)IPv6,而您的 WiFi 使用(较旧的)IPv4。