我正在我的台式电脑上工作。在这台机器上,我还运行Tomcat
Java 开发,以便我可以访问我的本地地址:
http://192.168.1.1:8080/myapp
现在我去whatsmyip.com
得到我的IP
假设它是:119.56.1.78
现在我想要的是:我转到另一台 PC(不在我的 LAN 上)或世界各地任何连接到 Internet 的 PC 并输入以下地址:
http:// 119.56.1.78:8080/myapp
这应该向我显示我可以从本地访问的相同页面http:// 192.168.1.1:8080/myapp
。
这可能吗?
答案1
是的,这是可能的。它被称为“转发端口”。
119.56.1.78 - 是您的公共IP地址.
192.168.1.1 - 是您的私有 IP地址局域网。
要了解如何进行端口转发,请阅读这个非常好且简短的教程,其中包含许多精美的图片:
如何转发路由器上的端口
答案2
8080 port
您需要通过路由器转发。
如果您的IP
更改(您有一个动态IP
或静态的IP
,这取决于您ISP
),您可以从中获取主机名动态网络并设置你的路由器,当它发生变化时更新dyndns
它IP
。这将允许你像这样访问你的应用程序:
hostname.dynsns.org/your_app
或者,您可以租用托管服务器和域名。
答案3
如果是为了短期,则可以使用localtunnel
(类似ngrok
)。
只需按照以下步骤操作即可(需要:NodeJS):
localtunnel
通过运行安装npm install -g localtunnel
假设您的应用正在运行
http://localhost:8080/
,然后运行lt --port 8080
它将创建一个具有随机名称的公共 URL 域,例如这。
注意:您也可以创建自定义 URL(例如:lt --port 4200 -s "sangeeth"
,-s
表示子域名)。
好了!完成了!
答案4
- 下载恩格罗克。
- 运行您的服务。
- 假设你的 tomcat 服务器监听 8080 端口,运行恩格罗克在命令行中使用以下命令:
ngrok.exe http 8080
恩格罗克开始端口转发,如下所示:
现在,客户端可以使用 url 运行请求http://a9bb8562.ngrok.io/myapp
。