【发布时间】:2022-01-14 21:23:01
【问题描述】:
目前我在端口 80 上运行单个 WAR 应用程序的单个 tomcat。域名 www.foo.org 指向此服务器 ip。
在 80 端口为不同的客户端添加 www.bar.org 域的过程是什么?
谢谢
【问题讨论】:
标签: tomcat
目前我在端口 80 上运行单个 WAR 应用程序的单个 tomcat。域名 www.foo.org 指向此服务器 ip。
在 80 端口为不同的客户端添加 www.bar.org 域的过程是什么?
谢谢
【问题讨论】:
标签: tomcat
从一开始,您的 conf/server.xml 中有一个“主机”记录,用于localhost
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
现在您可以添加另一个“主机”记录,例如
<Host name="anotherclient.com" appBase="anotherclient" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="anotherclient_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
其中name="anotherclient.com" 是新客户端的域,appBase="anotherclient" 是它的 Web 应用程序根目录名称(您部署战争的位置);它是相对于 tomcat 主目录的。
tomcat 重启后将接受更改。
去往任何其他域(server.xml 中未列出)但指向您服务器的 IP 地址的请求将被传递给默认应用程序,它在 Engine 元素中指定
<Engine name="Catalina" defaultHost="localhost">
【讨论】:
/opt/tomcat/webapps/ROOT.war,然后新的 bar.org 网站在 /opt/tomcat/anotherclient/ROOT.war?
war 的空目录不会很有用,因此只需创建它并在那里部署您的war。然后重启tomcat。
在其默认配置中,Tomcat 接受对任何主机名的请求,并将它们全部发送到 conf/server.xml 中定义的“localhost”
如果您想为每个主机名设置不同的 webapps,那么您必须在 conf/server.xml 中定义第二个
您可以在此处阅读
【讨论】:
通常你有一个tomcat(或其他应用程序服务器)的端口不同于80(如8080或7001或任何你想要的)。 之后,您在端口 80 上放置一个 Web 服务器(如 apache http 服务器)并配置一个或多个连接器以指向具有不同地址的不同应用程序服务器上的不同端口。
对于 Apache http + tomcat 你可以看看这个链接:
http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html
【讨论】: