如何在Tomcat 7/8中创建虚拟主机

如何在Tomcat 7/8中创建虚拟主机。使用这篇文章你就知道如何使用主域名访问你的Java应用程序。在Tomcat中添加顶级域名

为什么是虚拟主机?

虚拟主机为我们提供了单一主机服务器上的多个域名(网站)。它是多个托管帐户之间的资源共享的概念。虚拟主机的最佳利用共享的托管服务器,多个用户可以托管在单个服务器上的多个网站。

设置详细信息:

我们创建了一个Linux服务器和IP为192.168.1.100的Tomcat的托管服务。所以安装Tomcat 8 并配置后,我们已经在使用Tomcat的管理控制台的tomcat部署了两个Java Web应用程序在端口80上运行。现在,这两个应用程序在以下URL运行
http://192.168.1.100/myapp
http://192.168.1.100/myapp2
现在,我们要运行在主要领域都web应用程序(example.com与mydomain.org)。使最终用户可以通过使用主域名访问Web应用程序。

创建虚拟主机:

要在Tomcat中创建虚拟主机,首先定位到Tomcat安装目录,并编辑 config/server.xml 文件。添加如下配置文件主机条目。
<Host name="example.com"  appBase="webapps" unpackWARs="true" autoDeploy="true">
	<Alias>www.example.com</Alias>

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

	<Context path="" docBase="/opt/tomcat8/webapps/myapp"
		   debug="0" reloadable="true"/>
</Host>


<Host name="mydomain.org"  appBase="webapps" unpackWARs="true" autoDeploy="true">
	<Alias>www.mydomain.org</Alias>

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

	<Context path="" docBase="/opt/tomcat8/webapps/myapp2"
		   debug="0" reloadable="true"/>
</Host>

重新启动Tomcat服务

在Tomcat中添加虚拟主机之后,我们需要重新启动Tomcat服务。使用Tomcat的init服务重新启动它,如果你没有为Tomcat的init服务,从Tomcat安装目录下执行以下命令。
# ./bin/shutdown.sh
# ./bin/startup.sh