`

tomcate-发布多个项目

阅读更多
在tomcat的conf目录修改server.xml配置域名和项目的挂接关系可以注释掉默认的<host></host>

使用实际用到的配置路径:
<Host name="http://ntmy.163.com"
  debug="0"
  appBase="D:\\Tomcat5.5\\webapps" 
  unpackWARs="true"
  autoDeploy="true"
  xmlValidation="false"
  xmlNamespaceAware="false">

    <Context path="/"
      docBase="D:\\Tomcat5.5\\webapps\\yourproject1" 
      reloadable="true"  
      caseSensitive="false"  
      debug="0">
   </Context>
</Host>

<Host
  name="www.165.net"
  debug="0"
  appBase="D:\\Tomcat5.5\\webapps"
  unpackWARs="true"
  autoDeploy="true"
  xmlValidation="false"
  xmlNamespaceAware="false">
   <Context
    path=""
    docBase="D:\\Tomcat5.5\\webapps\\yourproject2" 
    reloadable="true"
    caseSensitive="false"  
    debug="0">
   </Context>
</Host>

   其中:Host 的name属性为你的域名且不能相同、appBase指向你的工程文件所在的目录、docBase指向你的工程目录,其他属性可根据自己实际情况及需要配置。
有一点需要说明的是,在公司的内网里输入不了网址,只能输入IP地址去查看,因为路由器绑定的固定IP,就是公司的服务器,所以只能从外网可以正常的访问。

Tomcat发布网站知识集锦(修改端口、修改默认发布目录、多域名绑定)

引子:
   这几天公司有个电子商务平台要发布,相关人员要求一个机器上的多个项目使用不同的域名访问,偶以前使用过Apache之类的,以为Tomcat应该差不多,所以就试了试。没想到试的过程中发现了很多东东,这里总结了一下,拿出来跟大家分享~~~~~
环境:Tomcat 6+jdk 6 update3
一、修改发布端口号为80(Tomcat默认为8080)
   打开配置文件(偶的如下:D:\Program Files\Tomcat\conf\server.xml),找到:
<Connector   port="8080" protocol="HTTP/1.1" maxThreads="150"connectionTimeout="20000" redirectPort="8443" />
修改后:
   <Connector port="80" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
(URIEncoding="UTF-8"防止乱码,根据需要选择)
其实这里就是把port:8080,修改成port:80就可以了,其他的参数不变。这样客户机在访问服务器时直接输入IP或域名就可以了。

二、修改tomcat发布路径(默认路径:D:\Program Files\Tomcat\webapps\ROOT)
    打开配置文件(偶的如下:D:\Program Files\Tomcat\conf\server.xml),找到:
<Engine name="Catalina" defaultHost="localhost">
   <Host name="localhost" appBase="webapps" unpackWARs="true" xmlValidation="false" xmlNamespaceAware="false"></Host>
</Engine>

在<host></host>标签之间添加上:
<Context path="" docBase="photo" debug="0" reloadable="true" />
path是说明虚拟目录的名字,如果你要只输入ip地址就显示主页,则该键值留为空;
docBase是虚拟目录的路径,它默认的是$tomcat/webapps/ROOT目录,现在我在webapps目录下建了一个photo目录,让该目录作为我的默认目录。
debug和reloadable一般都分别设置成0和true。
这样,再访问服务器时就找$tomcat/webapps/photo下的页面了~~~~~
三、多域名绑定
   打开配置文件(偶的如下:D:\Program Files\Tomcat\conf\server.xml),找到:
<Engine name="Catalina" defaultHost="localhost">
   <Host name="localhost"  appBase="webapps" unpackWARs="true" xmlValidation="false" xmlNamespaceAware="false">     
   </Host>
</Engine>

修改为:
<Engine name="Catalina" defaultHost="pic.redcollar.com">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
      <Host name="pic.redcollar.com"  appBase="abcapps"
            unpackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">  
      </Host>

      <Host name="pic1.redcollar.com"  appBase="D:\Program Files\Tomcat\test"
            unpackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>
</Engine>

这里解释一下上面的配置
Engine 的 dafaultHost :表示访问该tomcat默认进入的主机,注意一定不能是localhost,不然别人通过你的ip访问,就会默认进入tomcat的管理界面.
Host 的 name:表示该主机绑定的域名,如果绑定localhost则可以通过在浏览器中输入localhost访问该Host.
Host的 appBase:表示该主机绑定的文件存放路径,可以使用相对路径或绝对路径.

按照上面的配置:
1.如果我在浏览器中输入http://localhost 则访问 D:\Program Files\Tomcat\webapps\ROOT 下的网站
2.如果输入http://pic.redcollar.com 则访问 D:\Program Files\Tomcat\abcapps\ROOT 下的网站
3.如果输入http://pic1.redcollar.com 则访问 D:\Program Files\Tomcat\test\ROOT 下的网站.
以上,就是Tomcat发布网站时几个问题的解决办法,希望对大家有帮助~~~~~
如何隐藏tomcat发布目录的文件列表
   <servlet-name>default</servlet-name>
   <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
   <init-param>
        <param-name>debug</param-name>
        <param-value>0</param-value>
   </init-param>
   <init-param>
         <param-name>listings</param-name>
         <param-value>false</param-value>
   </init-param>

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics