问题:
我已经在家庭网络上建立了一个(Docker)Django-Gunicorn-Nginx网站。它可以在本地网络上运行,但是我无法通过我的域访问它。
设置:
测试
:我已在端口22上启用了端口转发功能,并且能够通过SSH使用ssh user@domain
连接到服务该网站的计算机,并且运行良好-> domain/ddns ok
。
我已经通过使用连接网站的计算机的完整静态IP来从连接在同一LAN上的另一台计算机访问该网站,并且运行良好-> website/server ok
。
我已经致电我的ISP,以检查是否一切设置正确,是否可以通过我的网络为网站提供服务,显然没有问题-> router/network ok
。
线索:
当我尝试通过域或完整的公共IP从家庭网络外部访问该站点时,会收到ERR_EMPTY_RESPONSE。
当我尝试从我的家庭网络,通过域或使用完整的公共IP(而不是通过实际起作用的LAN IP)访问站点时,我被重定向到页面192.168.0.1/intercept.html,其中包含来自我的ISP的一条消息,说我没有连接到互联网(实际上已经连接到互联网):
所以,在这一点上我有点迷茫。我想知道解决这种情况的最佳方法是什么。
答案 0 :(得分:0)
正如@ ben5556所建议的那样,我尝试使用端口8000,并且该端口有效:)因此,我的ISP可能阻塞了端口80。
首先,我尝试使用端口8080,但在路由器配置页面上启用端口转发时,它显示警告,指出该端口已为其他内容保留,因此我尝试使用端口8000。
这很烦人,因为我给我的ISP打了电话,他们说使用端口80应该没有问题。此外,在端口80上启用端口转发时完全没有警告。
更新
在公共端口8000上为网站提供服务是没有意义的,因为浏览器默认使用端口80,因此最终的解决方案是启用从公共端口80到LAN 8000的端口转发。显然只有LAN端口80被阻止,因此该解决方案可以很好地工作。