我在 Windows Server 2019 上使用 tomcat v8.5 通过虚拟主机部署我的应用程序。在 server.xml 中:
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
/>
...
<Host name="name1.name2.example.com" appBase="webapps/ROOT"/>
我只能从本地网络通过 URL 访问部署在 ROOT 中的应用程序name1.name2.example.com
,而不能从网络外部访问。
如何使其从网络外部可访问,请注意防火墙已禁用并且两端都定义了端口 80 的入站和出站规则。
PS:如果我更改port="80"
为port="8080"
可从网络外部访问应用程序,但使用 FQDN 后的端口号:name1.name2.example.com:8080
我不想要(我想隐藏端口号)
答案1
使用 Nginx 作为反向代理可以帮助您解决这个问题。您可以在任何端口(例如 8080)上运行应用程序,并使用 Nginx 将流量从端口 80 转发到该端口。这样,外部用户在访问您的应用程序时就无需指定端口号。