如何从外网访问本地的Tomcat?

本地安装了一个Tomat服务端,在局域网内可以访问到,但是其他网络里或者外网是无法访问到的。
如何才能从外网访问到本地tomcat部署的WEB应用呢?

当前的网络都不会给分配公网IP的,都是给分配一个私网IP,所以本地的tomat是没法从外网访问到。
所以要想从外网访问到,需要借助端口映射软件holer,在配置文件里配置一个key,启动进程就可以实现从外网访问到了,配置完全没有技术含量,holer是一个开源的反向代理软件,可以参考官网的blog:blog.wdom.net 了解更多关于holer的应用场景。

nginx映射个外网地址

花生壳貌似也是可以的我以前试过

之前用过holer这款软件做反向代理,配置简单,申请一个key配置到holer.conf文件里就可以了,服务器在国内,速度也快着,可以百度一下有很多技术文章可以参考,也可以在GitHub上看下作者的Readme介绍,里面很详细介绍每一个使用步骤,基本上按照步骤下来很容易实现,说白了就配置一个key就可以了.

用ngrok将本地映射成外网,然后就可以被访问到了。下载下来用ngrok.exe http 8080命令就可以在命令窗口下看到一个映射地址。将这个地址给别人就可以访问

准备工作
安装Java 1.7及以上版本
执行命令java -version检查Java安装和配置是否正确。

安装并启动Tomcat
默认安装的Tomcat端口是8080。

实现步骤
下载并解压holer软件包
Holer软件包:holer-client.zip

修改holer配置文件
在holer官网上申请专属的holer access key或者使用开源社区上公开的access key信息。

例如申请得到的holer信息如下,这里以此holer信息为例:


Holer Client : holerdemo@gmail.com

Access Key : 6688daebe02846t88s166733595eee5d


Domain Name : holer65004.wdom.net

Internet Address : holer.org:65004

Local Address : 127.0.0.1:8080


修改配置文件: holer-client/conf/holer.conf

配置项更新为: HOLER_ACCESS_KEY=6688daebe02846t88s166733595eee5d

启动holer服务
进入目录: holer-client/bin

Windows系统平台:

双击startup.bat或者打开CMD控制台,进入目录下执行命令:startup.bat

Linux系统平台:

执行命令: sh startup.sh

访问映射后的公网地址
浏览器里输入如下URL,就可从公网也能访问本地Tomcat了。

http://holer65004.wdom.net或者http://holer.org:65004

问题咨询与帮助
使用holer过程中遇到问题可以先查看holer日志文件,日志路径:holer-client/logs,这样很容易排查出问题的具体原因。

更多的holer使用示例,请参考holer相关技术资料。