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>裡添加 注意修改字首 日期會自動添加