一、首先配置网络环境:
1.浏览器访问基于主机名的虚拟主机时,访问URL必须采用主机名,不能使用IP地址2.整个网络系统中必须建立主机名与IP地址的映射关系
2.1使用本地 Hosts 文件建立主机名与IP的映射关系(C:\Windows\System32\drivers\etc\Hosts)
127.0.0.1 www.test.cn
127.0.0.1 www.test.com
在设置好Hosts 文件后使用命令行ping localhost 和www.test.cn、www.test.com都能ping通
2.2 使用DNS (要钱的)
二、配置Tomcat
配置原理:
1. 一个<Connector> 元素用于配置一个对外的连接器,对于Web服务器的每一个监听端口号,都要配置一个独立的<Context>元素
2. 一个<Connector> 元素对应的连接器必须有一个<Engine> 元素关联
3. 将一个或多个<Context> 元素与<Engine> 元素关联的方式:将<Context> 元素与<Engine> 元素嵌套在同一个<Service> 元素中
配置方法:
在 server.xml 文件 的 <Server> 元素里面添加另一个 <Service> 元素
<Service name="secend-serv">
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<Engine name="Catalina" defaultHost="www.test.com">
<Host name="www.test.com" appBase="D:\webSite1" unpackWARs="true" autoDeploy="true" />
<Host name="www.test.cn" appBase="D:\webSite2" unpackWARs="true" autoDeploy="true" />
</Engine>
</Service>
注意:
1. <Service> 元素的 name 属性名称必须与原 <Service> 名称不同,因此修改为:secend-serv
2. <Connector >元素的 port 属性修改为 80(或者其他你想要的不被占用的端口)
3. <Engine>元素的 defaultHost 属性修改为所包含的一个 <Host> 属性的 name 属性值,我选用 www.test.com
4. <Host> 元素的name属性对应着网络的虚拟主机名,这要在host中配置;appBase是你web站点项目存放的路径
通过以上两步配置,在浏览器中访问 www.test.com/项目名 就能访问你的项目