tomcat多域名配置

时间:2023-03-09 13:07:39
tomcat多域名配置

1、找到你的tomcat然后在conf文件中找到server.xml打开;

<Server port="8005" shutdown="SHUTDOWN">

  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <GlobalNamingResources>
  <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase"description="User database that can be updated and saved"factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
  <Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
<!--<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
 -->
  <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
  <Engine name="Catalina" defaultHost="localhost">
<!--  <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
  -->
<!-- <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
  -->
  <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"xmlValidation="false" xmlNamespaceAware="false">
<!--<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
  -->
<!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
  prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
 -->
</Host>
</Engine>
</Service>
</Server>
在其中我主要是对俩个地方进行修改:
第一个将
<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
修改为:
"redirectPort="8443" />
第二就是在中添加<host>(一个host代表一个域名或访问地址)
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"xmlValidation="false" xmlNamespaceAware="false"   />
</Engine>
修改为
<Engine name="Catalina" defaultHost=www.abc.com>
<Host name="www.coe.com" appBase="webapps" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false" >
<Context path="" docbase="D:\Tomcat 6.0\webapps\ROOT" crosscontext="true" />
</Host>
<Host name="www.abc.com" appBase="ccc" unpackWARs="true" autoDeploy="true"
 xmlValidation="false" xmlNamespaceAware="false" >
<Context path="" docbase="D:\Tomcat 6.0\ccc\ROOT" crosscontext="true" />
</Host>
<Host name=www.cba.com appBase="dddd" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false" />
<Context path="" docbase="D:\Tomcat 6.0\dddd\ROOT" crosscontext="true" />

</Host>
</Engine>

tomcat 目录配置如下图:

tomcat多域名配置

其中ccc和dddd都是一个单独的项目,而每一个项目都必须放在root文件夹中才能实现多域名的访问。