天天看點

tomcat

tomcat

JDK Java Development Kit

Java語言軟體開發工具包

java運作環境 java工具 java基礎的類庫

JRE Java Runtime Environment

Java運作環境

java虛拟機(jvm) java核心類庫和支援檔案

JRE是JDK的子集 不包含開發工具

url:

協定 主機 端口号 路徑

http://www.192.168.4.1:8080/test.jsp

使用RPM安裝JDK環境 #一般都已經裝好了

#yum –y install java-1.8.0-openjdk #安裝JDK

#yum –y install java-1.8.0-openjdk-headless #安裝JDK

#java –version #檢視JAVA版本

安裝Tomcat

#tar -xzf apache-tomcat-8.0.30.tar.gz

mv apache-tomcat-8.0.30 /usr/local/tomcat #綠色軟體cp來就可以用

ls /usr/local/tomcat

bin/ #主程式目錄

lib/ #庫檔案目錄

logs/ #日志目錄

temp/ #臨時目錄

work/ #自動編譯目錄jsp代碼轉換servlet

conf/ #配置檔案目錄

webapps/ #頁面目錄

建立測試JSP頁面

#vim /usr/local/tomcat/webapps/ROOT/test.jsp

<html>

<body>

<center>

Now time is: <%=new java.util.Date()%> #顯示伺服器目前時間

</center>

</body>

</html>

檢視狀态

#netstat -anput | grep java

主配置檔案 #根目錄=/usr/local/tomcat/

注意: 配置檔案嚴格區分大小寫!

#vim /usr/local/tomcat/conf/server.xml

... #主配置檔案的架構#

<Server> #表示伺服器

<Service> #提供服務

<Connect port=8080 /> #服務端口

<Engine default=localhost> #提供的網站 default後為(IP通路)預設傳回的網站

<Host name="www.a.com" appBase="a" unpackWARS="true" autoDeploy="true">

#一個host表示一個虛拟網站

<Context path="" docBase="base" /> #指定a/base為網頁檔案預設ROOT非必須配置

<Context path="/test" docBase="/var/www/html" />

#類似于rewrite 當通路/test就跳轉到/var/www/html/index.html 頁面上

</Host>

<Host name="www.b.com" appBase="b" unpackWARS="true" autoDeploy="true">

</Engine>

</Service>

</Server>

...

context.xml檔案

定義會話管理器,JDBC等

tomcat-users.xml檔案

使用者認證的帳号密碼配置檔案

Tomcat-SSL加密網站

建立加密用的私鑰和證書檔案

#keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore

#公私鑰在一個檔案是以要設定密碼 按y确認

genkeypair 生成

alias 定義名稱

keyalg 密鑰算法(DSA,RSA)

keystore 檔案另存為

tomcat虛拟網站不和端口綁定關系(不是一一對應的)加密是對端口加密

vim /usr/local/tomcat/conf/server.xml

模版在85-87行

... #每個參數間至少有個空格間隔也可以是回車換行

<Connector port="8443"

protocol="org.apache.coyote.http11.Http11NioProtocol"

maxThreads="150" SSLEnabled="true" scheme="https" secure="true"

keystoreFile="/usr/local/tomcat/keystore"

keystorePass="123456"

clientAuth="false" sslProtocol="TLS" />

... #做一次 之後所有網站通過8443端口都可以加密

重新開機服務

#/usr/local/tomcat/bin/catalina.sh stop

#/usr/local/tomcat/bin/catalina.sh start

服務優化

修改Connector屬性

program 程式

progress 程序

thread 線程

一個程式可以有多個程序,一個程序可以有多個線程。

<Connector port="8080" protocol="HTTP/1.1"

maxThreads="1000" #用戶端最大線程數 預設一兩百

minSpareThreads="100" 最小線程數

maxSpareThreads="1000" 最大閑置線程數

enableLookups="false" 關閉DNS查詢

URIEncoding="utf-8"

acceptCount="1000" #監聽端口等待列隊最大數 預設100

connectionTimeout="20000" #網絡連接配接逾時時間 ms

redirectPort="8443" /> #重定向端口需要安全通信轉給端口

解決tomcat8005端口無法啟用的問題

vim /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64/jre/lib/security/java.security

securerandom.source=file:/dev/urandom

日志

#vim /usr/local/tomcat/cong/server.xml

<Host>

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

prefix="localhost_access_log" suffix=".txt"

pattern="%h %l %u %t "%r" %s %b" />

prefix 日志字首 suffix 日志字尾,網站需要就要在<Host>裡添加 注意修改字首 日期會自動添加