如何正確的將J2ee項目部署到Tomcat


前提.首先保證你的Tomcat按照是沒有任何問題的。如有問題則可能按照本教程也無效。

 

1.打開配置文件(我的如下:C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\server.xml),找到:

<Connector port="8080" protocol="HTTP/1.1"  
              maxThreads="150" connectionTimeout="20000"   
              redirectPort="8443" />    
<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" />   
<Connector port="80" protocol="HTTP/1.1"
             maxThreads="150" connectionTimeout="20000"
             redirectPort="8443" />  
  

把port:8080,修改成port:80就可以了,其他的參數不變。這樣客戶機在訪問服務器時直接輸入IP或域名就可以了

2.修改tomcat的字符對應亂碼問題

<Connector port="80" protocol="HTTP/1.1"  
              maxThreads="150" connectionTimeout="20000"  
              redirectPort="8443" />  
<Connector port="80" 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"/>  
<Connector port="80" protocol="HTTP/1.1"
             maxThreads="150" connectionTimeout="20000"
             redirectPort="8443" URIEncoding="UTF-8"/>

修改tomcat發布路徑(默認路徑:C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\ROOT)
打開配置文件(我的在:C:\Program Files\Apache Software Foundation\Tomcat 7.0\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="rms" debug="0" reloadable="true" />  
<Context path="" docBase="項目路徑" debug="0" reloadable="true" />

docBase是虛擬目錄的路徑,它默認的是$tomcat/webapps/ROOT目錄,現在我在webapps目錄下建了一個photo目錄,讓該目錄作為我的默認目錄。debug和reloadable一般都分別設置成0和true。
這樣,再訪問服務器時就找$tomcat/webapps/rms下的頁面了.

3.多域名綁定

<Engine name="Catalina" defaultHost="localhost">   
<Host name="localhost"   appBase="webapps"  
             unpackWARs="true"  
             xmlValidation="false" xmlNamespaceAware="false">         
     </Host>   
</Engine>  

A:多個工程在不同的目錄下

<Engine name="Catalina" defaultHost="pic.jb51.net">   
     <Realm className="org.apache.catalina.realm.UserDatabaseRealm"  
              resourceName="UserDatabase"/>   
     <Host name="xixi.jb51.net"   appBase="abcapps"  
             unpackWARs="true"  
             xmlValidation="false" xmlNamespaceAware="false">   

</Host>  
<Engine name="Catalina" defaultHost="pic.jb51.net">
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>
    <Host name="xixi.jb51.net"  appBase="abcapps"
            unpackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">
</Host>
     <Host name="haha.jb51.net"   appBase="D:\Program Files\Tomcat\test"  
            unpackWARs="true"  
             xmlValidation="false" xmlNamespaceAware="false">   
</Host>   
     <Host name="lala.jb51.net"   appBase="webapps"  
             unpackWARs="true"  
             xmlValidation="false" xmlNamespaceAware="false">   
     </Host>   
</Engine>  
<Host name="haha.jb51.net"  appBase="D:\Program Files\Tomcat\test"
            unpackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">

</Host>
    <Host name="lala.jb51.net"  appBase="webapps"
            unpackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">
    </Host>
</Engine>

測試在C:\WINDOWS\system32\drivers\etc下的hosts文件中添加如下內容:
127.0.0.1 xixi.jb51.net
127.0.0.1 lala.jb51.net
127.0.0.1 haha.jb51.net

按照上面的配置:
1. http://xixi.jb51.net 訪問 ${tomcat}\ abcapps\ROOT 下的網站
2. http://haha.jb51.net 訪問 D:\Program Files\Tomcat\test\ROOT 下的網站
3. http://lala.jb51.net 訪問 ${tomcat}\webapps\ROOT 下的網站.

Engine的dafaultHost:表示訪問該tomcat默認進入的主機,注意一定不能是localhost,不然別人通過你的ip訪問,就會默認進入tomcat的管理界面.
Host 的 name:表示該主機綁定的域名,如果綁定localhost則可以通過在瀏覽器中輸入localhost訪問該Host.
Host的 appBase:表示該主機綁定的文件存放路徑,可以使用相對路徑或絕對路徑.

B:多個工程在同一目錄webapps下,即在不同的<host></host>里面配<Context>

<Engine name="Catalina" defaultHost="xixi.jb51.net">   
     <Realm className="org.apache.catalina.realm.UserDatabaseRealm"  
         resourceName="UserDatabase"/>   
     <Host name="xixi.jb51.net"   appBase="webapps"  
         unpackWARs="true"  
         xmlValidation="false" xmlNamespaceAware="false">   
        <Context path="" docBase="test1" debug="0" reloadable="true" />   
</Host>   
<Host name="haha.jb51.net"   appBase="webapps"  
         unpackWARs="true"  
         xmlValidation="false" xmlNamespaceAware="false">   
        <Context path="" docBase="test2" debug="0" reloadable="true" />   
</Host>   
<Host name="lala.jb51.net"   appBase="webapps"  
         unpackWARs="true"  
         xmlValidation="false" xmlNamespaceAware="false">   
        <Context path="" docBase="test3" debug="0" reloadable="true" />   
</Host> 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM