为多个域部署Apache Tomcat的WAR文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为多个域部署Apache Tomcat的WAR文件相关的知识,希望对你有一定的参考价值。

我希望在端口80上运行一个Web服务器。我读到的每个地方,Apache Tomcat都运行在8080.谁想在他们的URL中拥有它?所以我的第一个问题是我在哪里改变端口号?我是在一个地方更换它吗?

我习惯了apache2虚拟主机。我想在tomcat上进行相同的设置。文件夹属于每个网站。我已经弄清楚如何使用servers.xml创建虚拟主机并为每个站点提供多个文件夹,但我无法弄清楚如何将war文件部署到每个虚拟主机的根目录。

部署war文件时,有一个second.war文件,并且有一个名为second的空白目录。当我去看网站时,我必须去http://example.com:8080/second看看。我不想在URL中输入second。我该如何解决这个问题?我不是Java程序员,编译Java的人是初学者JSP开发人员。

这是我在servers.xml的主持人:

  <Host name="example.com"  appBase="webapps" unpackWARs="true" autoDeploy="true">
      <Alias>www.example2.com</Alias>

      <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
       prefix="example_com_app_access_log" suffix=".txt"
       pattern="%h %l %u %t %r %s %b" />

     <Context path="" docBase="/opt/tomcat/webapps/example_com"
       debug="0" reloadable="true"/>
  </Host>
答案

可怕的袋熊在评论中得到了答案。使用Apache设置反向代理,效果很好!

另一答案

tl;dr

对于侦听端口8080以接收来自端口80上的Web浏览器的请求的Tomcat,请在主机操作系统上使用数据包筛选器工具来更改传入网络数据包的端口号。此过程称为端口转发。

Port 80 is restricted

以上是关于为多个域部署Apache Tomcat的WAR文件的主要内容,如果未能解决你的问题,请参考以下文章

无法在 Apache Tomcat 6 上部署战争

自动部署批处理

tomcat部署多war包

使用批处理文件在 XAMPP 中部署 WAR 文件

linux系统下部署war包

maven一键部署tomcat war包(转载)