TOMCAT如何建立两个端口服务

来源:互联网 发布:php 高精度计算 编辑:程序博客网 时间:2024/05/17 09:10

当使用Tomcat作为webService的时候,是不是会想过这样的一个问题:如何利用Tomcat建立两个WebServer,同时侦听来自不同端口的请求呢?要实现这一点是很简单的。以下假设Tomcat安装在D:/Tomcat5.0目录下Tomcat在启动的时候,都会从D:/Tomcat5.0/conf/server.xml中获得server启动的一些基本信息;在server.xml中,你会看到<Service>这个节点,如下所示: 


<Service name="Catalina">
 <Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="8080" redirectPort="8443" maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
 </Connector>
 <Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">
 </Connector>
 <Engine defaultHost="localhost" name="Catalina">
  <Host appBase="webapps" name="localhost">
   <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
  </Host>
  <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
 <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
 </Engine>
</Service>

 


    在<Service>节点下的第一个<Connector>节点,则定义了侦听的端口,以上例子就是8080。而对于<Service>节点本身,它的属性name的值是Catalina,这是一个关键的地方,接着就是<Engine>子节点,而它的属性defaultHost的值是localhost,这也是一个关键的地方。我们可以从D:/Tomcat5.0/conf下面找到一个名为Catalina的文件夹,在这个文件夹中还包含着一个名为localhost的文件夹。在localhost文件夹下面包含着很多xml,而这些xml就是每一个WebApplication的Context配置文件了。根据这些信息,很容易就可以想到建立两个WebServer的方法了。      首先,在D://Tomcat5.0//conf   创建一个名为Fantasysoft(名字可以随你自己定了)的文件夹,然后在Fantasysoft下面在创建一个localhost的文件夹,然后将相应的Web   Application的Context配置文件放到新建的localhost文件夹中。
    接着,在server.xml中对照已有的<Service>节点增加一个节点,将name属性改Fantasysoft,将port口都进行相应的修改。如下:

 

<Service name="Fantasysoft">
 <Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="8090" redirectPort="8453" maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
 </Connector>
 <Connector port="8019" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"   redirectPort="8453">
 </Connector>
 <Engine defaultHost="localhost" name="Catalina">
  <Host appBase="webapps" name="localhost">
   <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
  </Host>
  <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
  <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
 </Engine>
</Service>


    最后,重新启动Server,你就可以通过8090端口访问到你建立的网络应用程序了。

原创粉丝点击