Tomcat
目錄
- Tomcat
- tomcat簡介
- tomcat的用處
- 部署tomcat
- 測驗訪問
- 訪問Host Manager界面
- 訪問Server Status
tomcat簡介
Tomcat 服務器是一個免費的開放源代碼的Web 應用服務器,屬于輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被普遍使用,是開發和除錯JSP 程式的首選,對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache 服務器,可利用它回應HTML(標準通用標記語言下的一個應用)頁面的訪問請求,實際上Tomcat是Apache 服務器的擴展,但運行時它是獨立運行的,所以當你運行tomcat 時,它實際上作為一個與Apache 獨立的行程單獨運行的,
Tomcat是一個免費的開源的Serlvet容器,用來運行java程式的容器,是開發和除錯Servlet(Server Applet)、JSP(Java Server Pages) 程式的首選;Tomcat就是傳說中的中間件之一,tomcat本身是一個容器,專門用來運行java程式,java語言開發的網頁.jsp就應該運行于tomcat中,而tomcat本身的運行也依賴于jdk環境,
tomcat的用處
常見的中間件
一般本地開發的話,小專案,或者是個人開發建議使用tomcat;
linux系統建議使用jetty或apache hpppd;
大型的專案就用JBOSS或webloigc;
大專案或者商業專案一般采用:weblgoic/webshere,其他的還有jboss、glasshfish等;
一些示例專案或者小專案常采用jetty;
tomcat , jboss, weblogic, websphere 一般專案tomcat就可以了,
部署tomcat
apache-tomcat-10.0.23安裝包
關閉防火墻和selinux
[root@lnh ~]# systemctl stop firewalld.service
[root@lnh ~]# vim /etc/selinux/config
SELINUX=disabled
[root@lnh ~]# setenforce 0
[root@lnh ~]# systemctl disable --now firewalld.service
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
安裝java
[root@lnh ~]# dnf -y install java-11-openjdk
下載tomcat并解壓tomcat到/usr/local/目錄下
[root@lnh ~]# wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.23/bin/apache-tomcat-10.0.23.tar.gz
[root@lnh ~]# ls
anaconda-ks.cfg apache-tomcat-10.0.23.tar.gz
[root@lnh ~]# tar xf apache-tomcat-10.0.23.tar.gz -C /usr/local/
[root@lnh ~]# cd /usr/local/
[root@lnh local]# ln -s apache-tomcat-10.0.23/ tomcat
自定義一個Hello World的 java的測驗網頁
[root@lnh local]# mkdir /usr/local/tomcat/webapps/test
[root@lnh local]# cd /usr/local/tomcat/webapps/test
[root@lnh test]# vim index.jsp
[root@lnh test]# cat index.jsp
<html>
<head>
<title>test page</title>
</head>
<body>
<%
out.println("Hello World");
%>
</body>
</html>
啟動tomcat
[root@lnh test]# cd /usr/local/tomcat
[root@lnh tomcat]# bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
//默認埠為8080
通過ps -ef | grep tomcat 可以查看到有java和tomcat的行程,說明服務已經啟動成功
[root@lnh tomcat]# ps -ef | grep tomcat
root 36430 1 13 00:17 pts/2 00:00:06 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root 37846 4714 0 00:18 pts/2 00:00:00 grep --color=auto tomcat
[root@lnh tomcat]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:*
LISTEN 0 100 *:8080 *:*
LISTEN 0 128 [::]:22 [::]:*
測驗訪問
訪問tomcat首頁:
http://192.168.222.250:8080

訪問hello world測驗頁:
http://192.168.222.250:8080/test/

訪問Host Manager界面
配置tomcat-users.xml檔案,在行上面添加兩行,設定角色,登錄用戶名和密碼,角色名稱只能是admin-gui 用戶名和密碼自定義
[root@lnh ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
<role rolename="admin-gui"/> //添加
<user username="tomcat" password="123456" roles="admin-gui"/> //添加
</tomcat-users>
配置host-manager/META-INF/context.xml檔案,允許192.168.222.0/24網段訪問,在allow欄位后添加
[root@lnh ~]# vim /usr/local/tomcat/webapps/host-manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
<CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
sameSiteCookies="strict" />
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="192\.168\.222\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
重啟服務,先關服務,再啟服務
[root@lnh ~]# /usr/local/tomcat/bin/catalina.sh stop
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[root@lnh ~]# /usr/local/tomcat/bin/catalina.sh start
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
登錄網頁測驗登錄Host Manager 輸入對應的用戶名和密碼
用戶名為tomcat,密碼為123456
http://192.168.222.250:8080



訪問Server Status
編輯tomcat-users.xml
[root@lnh ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
<role rolename="admin-gui"/>
<role rolename="manager-gui"/> //添加
<user username="tomcat" password="123456" roles="admin-gui,manager-gui"/> //修改
</tomcat-users>
編輯manager/META-INF/context.xml,在allow欄位添加允許192.168.222.0/24網段訪問
[root@lnh ~]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
<CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
sameSiteCookies="strict" />
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="192\.168\.222\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
重啟服務,先關服務,再啟服務
[root@lnh ~]# /usr/local/tomcat/bin/catalina.sh stop
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[root@lnh ~]# /usr/local/tomcat/bin/catalina.sh start
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
登錄網頁,訪問Server Status,用戶名tomcat 密碼123456
訪問Manager App的時候就不需要密碼了,因為訪問了Server Status界面,所以不用輸入密碼





轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/509666.html
標籤:Linux
上一篇:Linux中CentOS 7版本安裝JDK、Tomcat、MySQL、lezsz、maven軟體詳解
下一篇:Haproxy
