我在本地可以访问网站,但是在打开端口后无法通过互联网访问

I can access the website locally but can't access it through the internet After openning the port

我想通过使用 userLand 应用程序使我的 phone 成为一个 Linux 网络服务器,它使您能够在 Andriod 上使用 ubuntu 发行版。

我已经在端口 8080 上安装了 Django 和 运行 我的服务器,因为端口 80 很忙(android 正在使用它似乎合乎逻辑)

一切正常,当我尝试从本地网络上的另一台设备访问该网站时,一切正常。

所以我继续下一步,使网站可以从整个互联网访问,然后我发现你需要在路由器上进行端口转发,以允许本地网络外部的设备访问本地网络中的设备本地网络 .

我遵循了以下步骤:

  1. 使 phone 的 IP 在本地静态化
  2. 添加了端口转发所需的配置(phone的ip,端口8080等...)
  3. 为我的 phone 找到了 public IP 并使用它和端口 8080

还是不行: 我可以在本地访问该网站,但无法通过互联网访问。

我尝试了另一种方法,使用 google 播放

上“AWebServer”应用程序中已经工作的服务器

还是一样的问题

我尝试暂时禁用路由器上的防火墙,但仍然是同样的问题

最后,我尝试用 OS 打开笔记本电脑上的端口:Windows 10 而不是 phone OS: Android,并使用端口检查程序进行了检查,但端口已关闭,但问题仍然存在。

我一直在努力解决这个问题一整天)),如果有人帮助我,我会很高兴。

谢谢

first image

second image

您的 ISP 可能已将您置于 NAT 之下,在这种情况下,端口转发可能仍然无法正常工作。

最好的办法是使用某种 SSH 隧道。

您可以尝试 ngrok

这将为您提供 URL 从 public 互联网访问您的应用程序。

这里唯一需要注意的是 ngrok 不是免费的。他们有一个基于订阅的模型。在免费套餐中,您可以使用 ngrok,但 link url 会在几个小时后发生变化。

如果你愿意,你也可以自己实现类似 ngrok 的东西。阅读有关 ssh 隧道的更多信息。这对你有帮助。