Linux下安裝Tomcat
阿新 • • 發佈:2021-06-28
1. 要想在Linux下使用Tomcat,就需要先安裝JDK
JDK1.8安裝教程:https://www.cnblogs.com/mylqm/p/14945382.html
2.進入Tomcat下載官網,選擇tar.gz(pgp,sha512)連結進行下載
官網下載連結:https://tomcat.apache.org/download-90.cgi
3. 下載完成之後,進入linux,輸入如下命令上傳壓縮包
[root@localhost /]# cd /usr/local
[root@localhost java]# rz
4.解壓 apache-tomcat-9.0.12.tar.gz
[root@localhost local]# tar xzf apache-tomcat-9.0.12.tar.gz //解壓tomcat
[root@localhost local]# mv apache-tomcat-9.0.12 tomcat9 //重新命名為 tomcat9
5、設定Tomcat開機啟動
[root@localhost mnt]# vi /etc/rc.d/rc.local
新增如下程式碼到 /etc/rc.d/rc.local 中:
注意:1、手動啟動 是因為你是使用者登陸,使用者登陸就會去載入/etc/profile檔案中配置的JDK環境,這個時候你就能啟動tomcat
2、開機啟動 它先讀取啟動檔案配置,你必須在系統識別使用者前載入/etc/profile檔案中配置的JDK環境,tomcat才能在開機時啟動
source /etc/profile
/usr/local/tomcat9/bin/startup.sh
6.配置環境
export JAVA_HOME=/usr/local/java/jdk1.8.0_291 export JRE_HOME=${JAVA_HOME}/jre export CATALINA_HOME=/usr/local/tomcat9 export //tomcat配置環境 CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${CATALINA_HOME}/bin export PATH=$PATH:${JAVA_PATH}
7. 執行profile檔案,這樣可以使配置不用重啟即可立即生效
[root@localhost java]# source /etc/profile
8.修改Tomcat埠
進入conf資料夾vi server.xml 編輯配置檔案
<Connector port="8088" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
這種修改對於8080埠衝突是可以解決的,但是如果想同時使用兩個tomcat,那麼這樣的修改還不完整,因為還有其它的埠會衝突。我們仍需要繼續修改
<Connector port="8089" protocol="AJP/1.3" redirectPort="8443" /> <Server port="8085" shutdown="SHUTDOWN">
9. 進入到 /usr/local/tomcat9/bin目錄下,啟動Tomcat
[root@localhost /]# cd /usr/local/tomcat9/bin //進入到tomcat9的bin目錄下 [root@localhost bin]# ./startup.sh //啟動Tomcat
當看到Tomcat started,則表示Tomcat已經啟動成功
10.查詢埠是否有程序守護用如下命令grep對應埠,如8088為埠號
netstat -nalp|grep 8088
11.防火牆
#停止firewall
systemctl stop firewalld.service
#開啟firewall
systemctl start firewalld.service
#禁止firewall開機啟動
systemctl disable firewalld.service
#檢視預設防火牆狀態(關閉後顯示not running,開啟後顯示running)
firewall-cmd --state
但是開啟防火牆,可能報這個錯
Failed to start firewalld.service: Unit firewalld.service is masked.
可以嘗試輸入下面命令看是否能解決,如果無法解決也可以選擇關閉防火牆
systemctl unmask firewalld.service