在目前,很多服务器都是一台服务器对外可以访问很多个javaEE的项目,这种实现方式就需要在tomcat里面配置虚拟主机了!下面就说说如何配置虚拟主机:
找到tomcat的安装目录,到TOMCAT_HOME/apache-tomcat7/conf目录下,找到server.xml这个文件,打开该文件,在该文件中找到关于Engine这个子节点
<Engine name="Catalina" defaultHost="localhost">
上面的配置了一个defaultHost中的localhost表示为默认的访问方法! 我们需要配置自己的记住就需要在Engine节点中添加Host节点,默认的有一个host如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
这个里面的name表示的是访问本地的localhost地址,appBase表示项目指定的父位置,当前的webapps代表:TOMCAT_HOME/apache-tomcat7/webapps这个位置,这个位置也是tomcat的默认的存放javaEE项目位置!
下面是我自己配置的一个虚拟主机:
<Host name="www.abc.net" appBase="/var/JavaServer/test" unpackWARs="true" autoDeploy="true">
<Alias>abc.com</Alias>
<Context path="/hello" docBase="/var/www/html/hello" debug="0" privileged="true"/>
</Host>
详细介绍一下:Host节点代表为一个虚拟主机,name表示需要访问的域名,这个域名是已经注册的域名!当前配置的域名:www.abc.net 在Host下有一个子节点,叫Alias,这个里面配置的是 另外一个域名,就是说,一个虚拟主机,可以使用多个域名!
那么访问www.abc.net 和abc.com是一样的!
appBase需要你指定的项目父路径,在当前的路径下可以存放多个项目 ,我们可以把项目打包或者放文件夹放在/var/JavaServer/test这个目录下
unpackWARs="true" 表示当发现在/var/JavaServer/test有打包的war项目的话,就开启解压功能!
autoDeploy="true" 表示支持热部署!
下面说说在Host节点下的Context节点,这个就是部署一个项目,但是这个项目不是在appBase目录下,他的路径在/var/www/html/hello这个目录下,path表示对外访问的名称, 这样使得tomcat灵活多变 !
关于tomcat配置虚拟主机我也说到这里了 如果有不明白的,可以联系我
author:spring sky
Email:vipa1888@163.com
QQ: 840950105