1. 程式人生 > >Tomcat 8(一)Tomcat常用配置

Tomcat 8(一)Tomcat常用配置

作業系統:win8

Jdk版本:1.7.0_51

Jdk目錄:C:\Program Files\Java\jdk1.7.0_51

Tomcat版本:8.0.3 

Tomcat目錄:D:\Program Files\apache-tomcat-8.0.3

注:Tomcat 8需要JRE7以上的JRE

1. Tomcat環境變數設定

1.1 Java環境變數設定

右鍵計算機—屬性—高階系統設定—環境變數,在”系統環境變數”,設定如下三個變數(如果變數已有,點”編輯”;如果變數沒有,點”新建”。格式:變數名 = 變數值)

JAVA_HOME = C:\Program Files\Java\jdk1.7.0_51

CLASSPATH = %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;.

在Path的變數值尾部加上;%JAVA_HOME%\bin

1.2 Tomcat環境變數設定

在”系統環境變數”,設定如下兩個變數

CATALINA_HOME = D:\Program Files\apache-tomcat-8.0.3

在Path的變數值尾部加上;%CATALINA_HOME%\bin

啟動Tomcat

雙擊D:\Program Files\apache-tomcat-8.0.3\bin目錄下的startup.bat(也可以在cmd下執行startup.bat)。在如下介面沒有異常,即表明

Tomcat啟動成功 


訪問Tomcat

在瀏覽器下輸入http://localhost:8080,即可看到Tomcat首頁

 

2. 修改Tomcat埠

Tomcat預設監聽的是8080埠,如果想修改此埠號,開啟

D:\Program Files\apache-tomcat-8.0.3\conf\server.xml,找到如下程式碼段,修改port屬性即可

  1. <Connectorport="8080"protocol="HTTP/1.1"
  2.                connectionTimeout="20000"
  3.                redirectPort="8443"/>

3. Tomcat設定

https

3.1 製作xx.keystore檔案

在命令列下輸入如下命令:

keytool -genkey -alias tomcat -keyalg RSA -keystore D:\test.keystore

(keytool.exe 在C:\Program Files\Java\jdk1.7.0_51\bin目錄下。因為已設定jdk環境變數,因此可以在命令列下可直接使用keytool)

金鑰庫口令隨意填,最後一步的金鑰口令也隨意填,也可以選擇跟金鑰庫口令一樣(按”Enter”鍵即可)

 

D盤下可以看到test.keystore 檔案

3.2 修改server.xml

開啟D:\Program Files\apache-tomcat-8.0.3\conf\server.xml,找到如下程式碼段

  1. <!--  
  2.     <Connectorport="8443"protocol="HTTP/1.1"SSLEnabled="true"
  3.                maxThreads="150"scheme="https"secure="true"
  4.                clientAuth="false"sslProtocol="TLS"/>
  5. -->

將註釋開啟,並修改Connector 標籤內容,keystorePass為金鑰庫口令

  1. <Connectorport="8443"
  2.            protocol="org.apache.coyote.http11.Http11NioProtocol"SSLEnabled="true"
  3.                maxThreads="150"scheme="https"secure="true"
  4.            keystoreFile="D:\tomcat.keystore"keystorePass="password"
  5.                clientAuth="false"sslProtocol="TLS"/>

重啟Tomcat,在瀏覽器下輸入https://localhost:8443,即可看到Tomcat首頁

4. 修改Tomcat預設web專案

Tomcatweb專案放在D:\Program Files\apache-tomcat-8.0.3\webapps目錄下,Tomcat自帶了5Web專案:docs、examples、host-manager、manager、ROOT,Tomcat啟動時會部署webapps下的所有專案

在瀏覽器下輸入http://localhost:8080/examples/index.html,即可訪問examples的首頁(雖然簡陋了點。。。)


(訪問http://localhost:8080/host-manager/index.jsp和http://localhost:8080/manager/index.jsp會提示輸入使用者名稱、密碼,Tomcat的賬號問題將在下文介紹)

顯然在訪問http://localhost:8080的時候,Tomcat預設指向了ROOT專案,那該怎麼做可以讓Tomcat指向自定義專案呢?

開啟D:\Program Files\apache-tomcat-8.0.3\conf\server.xml,找到如下程式碼段

  1. <Hostname="localhost"appBase="webapps"
  2.             unpackWARs="true"autoDeploy="true">
  3.         <!-- SingleSignOn valve, share authentication between web applications  
  4.              Documentation at: /docs/config/valve.html -->
  5.         <!-- 
  6.         <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
  7.         -->
  8.         <!-- Access log processes all example.  
  9.              Documentation at: /docs/config/valve.html  
  10.              Note: The pattern used is equivalent to using pattern="common" -->
  11.         <ValveclassName="org.apache.catalina.valves.AccessLogValve"directory="logs"
  12.                prefix="localhost_access_log"suffix=".txt"
  13.                pattern="%h %l %u %t "%r" %s %b" />
  14.       </Host>

在Host 標籤內加入如下程式碼段,docBase屬性可指定專案名稱,將其設定為"examples"

  1. <Contextpath=""docBase="examples"reloadable="true"crossContext="true">
  2.  </Context>

修改後的Host 標籤

  1. <Hostname="localhost"appBase="webapps"
  2.             unpackWARs="true"autoDeploy="true">
  3.     <Contextpath=""docBase="examples"reloadable="true"crossContext="true">
  4.     </Context>
  5.         <!-- SingleSignOn valve, share authentication between web applications  
  6.              Documentation at: /docs/config/valve.html -->
  7.         <!-- 
  8.         <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
  9.         -->
  10.         <!-- Access log processes all example.  
  11.              Documentation at: /docs/config/valve.html  
  12.              Note: The pattern used is equivalent to using pattern="common" -->
  13.         <ValveclassName="org.apache.catalina.valves.AccessLogValve"directory="logs"
  14.                prefix="localhost_access_log"suffix=".txt"
  15.                pattern="%h %l %u %t "%r" %s %b" />
  16.       </Host>

重新啟動Tomcat,在瀏覽器下輸入http://localhost:8080,即可看到examples的首頁

5. Tomcat賬號

訪問http://localhost:8080/host-manager/index.jsp,會提示輸入使用者名稱、密碼,點”取消”,會彈出錯誤頁面,根據此錯誤頁面可以找到設定Tomcat賬號的辦法

 

 

開啟D:\Program Files\apache-tomcat-8.0.3\conf\tomcat-users.xml,在tomcat-users標籤下新增如下內容

  1. <rolerolename="admin-gui"/>
  2.  <userusername="tomcat"password="s3cret"roles="admin-gui"/>

重啟Tomcat,然後訪問http://localhost:8080/host-manager/index.jsp,使用者名稱輸入tomcat,密碼輸入s3cret,即可

6. eclipse中新增Tomcat

eclipse版本:Eclipse Java EE IDE for Web Developers(Juno Service Release 2)

選擇Window-Preferences-Server-Runtime Environment-Add,選擇Tomcat版本,這版eclipse支援的Tomcat的最高版為7

因此下面使用apache-tomcat-7.0.52進行配置


輸入Tomcat7的路徑

JRE可以用Workbench default JRE也可以用安裝的JRE


點”Finish”完成eclipseTomcat設定

在eclipse下部署Web專案

右鍵Web專案-Run As-Run on Server

選擇剛才配置的Tomcat,點”Finish”,即可部署該專案

7. 修改Session有效時間

預設情況下,Session有效時間為30分鐘。開啟\conf\web.xml,修改session-timeout標籤的值

  1. <session-config>
  2.         <session-timeout>30</session-timeout>
  3. </session-config>