Tomcat虚拟主机配置

1、需求

在项目经验中,主机的TCP协议(HTTP协议是基于TCP/IP协议)的80端口是稀缺资源,不少状况下不可能为一个应用而去申请一台主机(无论是物理主机仍是虚拟服务器).这时候不少的Java Web应用会放到一个拥有TCP的80端口的Tomcat下面,因为每一个应用都要有本身的域名地址(这里域名后面确定不能有端口),因此须要咱们配置该Tomcat来支持一个IP对应多个域名,甚至一个应用对应多个域名.html

2、具体解决方案和步骤:

咱们已经有一个安装好的Tomcat6.0,而且在tomcat目录下自行创建了一个webapps2目录,在webapps和webapps2目录下分别都放置了一个测试项目"6"和"7".web

一、修改tomcat 6.0的默认访问端口(在conf目录的server.xml中),将8080改成80.
二、修改tomcat 6.0的虚拟主机配置(在conf目录的server.xml中).apache

<Engine name="Catalina" defaultHost="www.6.com">  
  <Host name="www.6.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">  
        <Context path="" reloadable="true" docBase="6" workDir="" />//若是不配置context则默认访问ROOT 
  </Host>  
  <Host name="www.7.com" appBase="webapps2" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">  
        <Context path="" reloadable="true" docBase="7" workDir="" />  
  </Host>

1.Engine的dafaultHost:表示访问该tomcat默认进入的主机,注意必定不能是localhost,否则别人经过你的ip访问,就会默认进入tomcat的管理界面.
2.Host的name:表示该主机绑定的域名,若是绑定localhost则能够经过在浏览器中输入localhost访问该Host.
3.Host的appBase:表示该主机绑定的文件存放路径,可使用相对路径或绝对路径.
4.<context>中path至关于虚拟目录名字,而docbase则是具体的文件位置.浏览器

三、最后在hosts文件中进行虚拟的DNS映射:tomcat

127.0.0.1 www.6.com  
127.0.0.1 www.7.com  
127.0.0.1 7.com

这时就能够经过curl http://www.6.com/访问webapps2目录下的目录名称为"6"的工程,经过curl http://www.7.com/访问webapps2目录下的目录名称为"7"的工程了.服务器

ps:apache服务器虚拟主机设置
http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html.app

相关文章
相关标签/搜索