2012-01-10 42 views
3

我有两个WAR文件在我的tomcat 6服务器上运行。Tomcat一个端口只有一个WAR

如何设置每个WAR只侦听一个端口? 例如:

端口443 =>仅可以访问a.war

端口8000 =>只能b.war

回答

3

我管理使用这些设置来配置上述场景访问:我创建了两个文件夹名为和根据webapp文件夹,并配置两个Service-elements指向两个不同的文件夹并侦听两个不同的端口。

server.xml中

<Service name="Catalina"> 
<Connector port="8000" protocol="HTTP/1.1" SSLEnabled="true" 
      maxThreads="150" scheme="https" secure="true" 
      keystoreFile="${catalina.base}/conf/.keystore" keystorePass="xxxxx" 
      clientAuth="false" sslProtocol="TLS" /> 

<Engine name="Catalina" defaultHost="localhost"> 
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm" 
     resourceName="UserDatabase"/> 

    <Host name="localhost" appBase="webapps/8000" 
     unpackWARs="true" autoDeploy="true" 
     xmlValidation="false" xmlNamespaceAware="false"> 
      <Context path="" docBase="Apple"/> 
    </Host> 
</Engine></Service> 

<Service name="Catalina2"> 
<Connector port="8080" protocol="HTTP/1.1" 
      connectionTimeout="20000" 
      redirectPort="443" /> 

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" 
      maxThreads="150" scheme="https" secure="true" 
      keystoreFile="${catalina.base}/conf/.keystore" keystorePass="xxxxx" 
      clientAuth="false" sslProtocol="TLS" /> 

<Engine name="Catalina2" defaultHost="localhost"> 
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm" 
     resourceName="UserDatabase"/> 

    <Host name="localhost" appBase="webapps/443" 
     unpackWARs="true" autoDeploy="true" 
     xmlValidation="false" xmlNamespaceAware="false"> 
    </Host> 
</Engine></Service> 
相关问题