Tomcat 多域名配置

环境

  • 一个tomcat,下面部署了多个项目

  • 有一个独立的IP

  • 有多个顶级(二级)域名指向不同的项目。

DNS配置

DNS没什么特殊的要求,配置都指向这一个IP就行。

Tomcat配置

多域名有可能存在多种配置方式,我使用了一种(文件结构)看着比较麻烦的方式。

Connector的配置方式基本都一样:

<Connector port="80" protocol="HTTP/1.1" URIEncoding="UTF-8" connectionTimeout="20000" redirectPort="8443" />

首先端口都是80,一般还会带上URIEncoding="UTF-8"防止乱码。

下面就是多域名的配置方式:

<Engine name="Catalina" defaultHost="www.mybatis.tk">
  <Host name="www.mybatis.tk" appBase="webapps" unpackWARs="true" autoDeploy="true">
  </Host>
  <Host name="www.cndocs.tk" appBase="docapps" unpackWARs="true" autoDeploy="true">
  </Host>
  <Host name="mbg.cndocs.tk" appBase="mbg" unpackWARs="true" autoDeploy="true">
  </Host>
  <Host name="spring.cndocs.tk" appBase="spring" unpackWARs="true" autoDeploy="true">
  </Host>
</Engine>

先看第一行的defaultHost="www.mybatis.tk",这个配置的意思是,当通过IP地址访问的时候,使用的那个域名host(和下面具体的Hostname一致)。

下面的顶级(和二级)域名配置都一样:

<Host name="www.mybatis.tk" appBase="webapps" unpackWARs="true" autoDeploy="true">
</Host>

这里需要注意的是appBase,这里指向的是tomcat目录下的webapps目录,默认指向该目录下的ROOT。所以这个配置实际上就相当于webapps/ROOT

上面完整配置中的其他几个docapps,mbg,spring也都是直接在tomcat下面的目录(和webapps是平级目录),都有ROOT目录,部署的项目也都直接在ROOT下。

按上面配置后,正常情况就可以访问了。

上面配置的网站就是下面这几个网址↓

欢迎访问

MyBatis工具:www.mybatis.tk

中文文档目录:www.cndocs.tk

Spring4中文文档:spring.cndocs.tk

MyBatis Generator中文文档:mbg.cndocs.tk

你可能感兴趣的:(tomcat,dns,多域名)