多网站多域名配置:
原理:一个网站或项目对应server.xml中的一个Host节点,多个网站创建多个Host节点即可,
<Host name="这里是域名" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="项目名(如上面的myweb)" debug="0" reloadable="true"/>
</Host> PS: appBase="webapps" 不要变,docBase 直接写网站或项目文件夹名 这样appBase+docBase 就可以定位网站了
配置的结果举例:(绑定域名:data.domain.com 网站或项目名:data)
<Host name="data.domain.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="data" debug="0" reloadable="true"/>
<!--通过Alias可以绑定多个域名到一个网站
<Alias>www.abc.com</Alias>
-->
</Host>
这样就可以通过绑定的域名访问到对应的网站了,那么如果通过ip或者没有添加host节点的域名访问呢?
那就访问默认的网站了,server.xml里面有个 <Engine name="Catalina" defaultHost="localhost"> 节点,这个就是制定默认的网站的,当域名解析了但网站没绑定(也就是没有添加相应的Host节点)或者直接ip访问时,就会访问localhost 这个默认网站了,当然也可以修改成你自己想要指定的某个网站
现在访问还是需要使用8080端口的,那么如果不用指定这个呢,我们知道http默认80端口是不需要指定端口访问的,那么我们把tomcat的端口修改成80端口即可
这个在节点: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 里面,把8080 修改成80就可以了