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

來源:互聯網
上載者:User

標籤:

前提.首先保證你的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> 

 

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.