Python,uWSGI,NGINX,FLASK在WiFi上运行并不是通过蜂窝

时间:2017-12-26 17:13:23

标签: python nginx mobile flask cellular-network

我使用Digital Ocean服务器运行personal website。该网站运作良好,我很满意。我能够设置并使用Lets Encrypt(在设置Lets Encrypt之前存在此问题)。

通过WiFi。通过蜂窝网络,网站无法加载。但是,如果我将手机切换到WiFi,它可以正常工作。我完全不知道造成这个问题的原因。

我的设置非常标准,Python和烧瓶,由nginx和uWSGI提供服务。一切都是使用this教程设置的。我很高兴发布nginx配置,uwsgi配置等,该网站的所有来源都是here

更新

此问题是由certbot中的错误引起的,doesn't handle IPV6 when used on NGINX。这可以通过编辑NGINX配置并在Wander Nauta's answer.

中添加行来修复

1 个答案:

答案 0 :(得分:1)

您的网站同时包含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

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