目前,我在端口80上运行带有单WAR应用程序的单只tomcat。域名www.foo.org指向此服务器ip。
在端口80上为不同的客户端添加www.bar.org域的过程是什么?
谢谢
发布于 2012-12-13 21:46:50
从一开始,localhost的conf/server.xml中就有一个“主机”记录
<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应用程序根目录名称(部署war的位置);它相对于tomcat dir。
在tomcat重新启动后,将接受更改。
指向任何其他域(不在server.xml中列出)但指向服务器的IP地址的请求将传递给默认应用程序,它将在Engine元素中指定。
<Engine name="Catalina" defaultHost="localhost">发布于 2012-05-22 15:45:38
在默认配置中,Tomcat接受对任何主机名的请求,并将它们全部发送到conf/server.xml中定义的"localhost“。如果您没有改变这一点,那么您所要做的就是确保为两个主机名指向您的服务器设置了DNS记录。
如果您希望为每个主机名创建一组不同的set应用程序,那么您必须在conf/server.xml中定义第二个set应用程序,并为其使用适当的主机名。(请注意,始终必须有一个“默认”主机,其中所有请求都与任何显式定义的主机不匹配)。
您可以阅读此处的文档:http://tomcat.apache.org/tomcat-7.0-doc/config/host.html (用于Tomcat7.0.x)。您没有提到您的版本,所以我给了您一个链接到最新版本的文档)。
发布于 2012-05-22 15:26:13
通常,端口上有一个tomcat (或其他应用服务器),与80不同(比如8080或7001或您想要的任何东西)。之后,您将一个web服务器(如apache服务器)放在端口80上,并配置一个或多个连接器,以指向具有不同地址的不同应用程序服务器上的不同端口。
对于Apache http + tomcat,您可以查看以下链接:
http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html
https://stackoverflow.com/questions/10704833
复制相似问题