本地安装了一个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相关技术资料。