Tomcat设置多个虚拟主机
方案一:多个工程在不同的目录下
<Engine name="Catalina" defaultHost="pic.jb51.net">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="xixi.jb51.net" appBase="abcapps"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
<Host name="haha.jb51.net" appBase="D:Program FilesTomcat est"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
<Host name="lala.jb51.net" appBase="webapps"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
</Engine>
测试在C:WINDOWSsystem32driversetc下的hosts文件中添加如下内容:
127.0.0.1 xixi.jb51.net
127.0.0.1 lala.jb51.net
127.0.0.1 haha.jb51.net
按照上面的配置:
1. http://xixi.jb51.net 访问 ${tomcat} abcappsROOT 下的网站
2. http://haha.jb51.net 访问 D:Program FilesTomcat estROOT 下的网站
3. http://lala.jb51.net 访问 ${tomcat}webappsROOT 下的网站.
Engine的dafaultHost:表示访问该tomcat默认进入的主机,注意一定不能是localhost,不然别人通过你的ip访问,就会默认进入tomcat的管理界面.
Host 的 name:表示该主机绑定的域名,如果绑定localhost则可以通过在浏览器中输入localhost访问该Host.
Host的 appBase:表示该主机绑定的文件存放路径,可以使用相对路径或绝对路径.
方案二 多个工程在同一目录webapps下,即在不同的<host></host>里面配<Context>
<Engine name="Catalina" defaultHost="xixi.jb51.net">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="xixi.jb51.net" appBase="webapps"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="test1" debug="0" reloadable="true" />
</Host>
<Host name="haha.jb51.net" appBase="webapps"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="test2" debug="0" reloadable="true" />
</Host>
<Host name="lala.jb51.net" appBase="webapps"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="test3" debug="0" reloadable="true" />
</Host>
参考:http://www.jb51.net/article/34696.htm