Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、Sun 和其餘一些公司及我的共同開發而成。html
Tomcat 服務器是一個免費的開放源代碼的Web 應用服務器,屬於輕量級應用服務器,在中小型系統和併發訪問用戶不是不少的場合下被廣泛使用,是開發和調試JSP 程序的首選。對於一個初學者來講,能夠這樣認爲,當在一臺機器上配置好Apache 服務器,可利用它響應HTML(標準通用標記語言下的一個應用)頁面的訪問請求。java
實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,因此當你運行tomcat 時,它實際上做爲一個與Apache 獨立的進程單獨運行的。linux
下面開始搭建Tomcat服務器web
若是安裝了openjdk,請先卸載,不然安裝不了oracle官方的jdk、卸載方法:yum remove java-* -yapache
[root@juny-18 ~]# yum remove java-* -ybootstrap
[root@juny-18 ~]#vim
rpm -ivh jdk-9.0.1_linux-x64_bin.rpm
準備中... ################################# [100%]瀏覽器
正在升級/安裝...tomcat
1:jdk-9.0.1-2000:9.0.1-ga ################################# [100%]bash
Unpacking JAR files...
plugin.jar...
javaws.jar...
deploy.jar...
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/hicolor/16x16/apps/sun-java.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/hicolor/16x16/apps/sun-javaws.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/hicolor/48x48/apps/sun-java.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/hicolor/48x48/apps/sun-javaws.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/HighContrast/16x16/apps/sun-java.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/HighContrast/16x16/apps/sun-javaws.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/HighContrast/48x48/apps/sun-java.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/HighContrast/48x48/apps/sun-javaws.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/hicolor/48x48/apps/sun-java.png" 的文件狀態(stat): 沒有那個文件或目錄
cp: 沒法獲取"/usr/java/jdk-9.0.1/lib/desktop/icons/hicolor/48x48/apps/sun-javaws.png" 的文件狀態(stat): 沒有那個文件或目錄
[root@juny-18 ~]#
查看是否安裝成功、
若是能看到下面的信息說明安裝成功
[root@juny-18 ~]#
java -version
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
能夠下面這條命令來查找安裝的位置
[root@juny-18 ~]#
rpm -pql jdk-9.0.1_linux-x64_bin.rpm #軟件的名稱
解壓到/usr/local/src/ 也能夠解壓到其餘的目錄
[root@juny-18 ~]#
tar zxf apache-tomcat-9.0.1.tar.gz -C /usr/local/src/
進入解壓目錄下
[root@juny-18 ~]#
cd /usr/local/src/apache-tomcat-9.0.1/
[root@juny-18 apache-tomcat-9.0.1]#
[root@juny-18 apache-tomcat-9.0.1]# ll
總用量 92
drwxr-x--- 2 root root 4096 11月 4 01:20 bin #腳本文件
drwx------ 2 root root 238 9月 28 01:32 conf #配置文件
drwxr-x--- 2 root root 4096 11月 4 01:20 lib #庫文件
-rw-r----- 1 root root 57092 9月 28 01:32 LICENSE #
drwxr-x--- 2 root root 6 9月 28 01:32 logs #日誌文件
-rw-r----- 1 root root 1804 9月 28 01:32 NOTICE
-rw-r----- 1 root root 6705 9月 28 01:32 RELEASE-NOTES
-rw-r----- 1 root root 15946 9月 28 01:32 RUNNING.txt
drwxr-x--- 2 root root 30 11月 4 01:20 temp #臨時文件
drwxr-x--- 7 root root 81 9月 28 01:32 webapps #Tomcat主要發佈目錄
drwxr-x--- 2 root root 6 9月 28 01:32 work #存放編譯後產生的jsp文件
|---webapps:Tomcat的主要Web發佈目錄(包括應用程序示例);
|--- ROOT:tomcat的家目錄
|--- index.jsp:Tomcat的默認首頁文件
爲了試驗的方便我麼如今把apache-tomcat-9.0.1重命名爲 tomcat
寫一個Tomcat的啓動腳本並設置Tomcat的一些配置
[root@juny-18 src]#
vim /etc/init.d/tomcat
#!/bin/bash # Tomcat init script for Linux # chkconfig: 2345 96 14 # discription: The Apache Tomcat Server/JSP container JAVA_OPTS='-server -Xms64m -Xmx128m' # -server 必定要做爲第一個參數,在多個CPU時性能佳 -Xms 初始heap(堆)> 大小,使用最小內存大小,cpu性能高時此值應該設大一些 -Xmx Java heap最大值,使用內存的最大值 上面兩個值分配的是JVM的 最小和最大值,取決於硬件的物理內存大小,建議爲物理內存的一半,不超過80% JAVA_HOME=/usr/java/jdk-9 #指定JDK目錄 CATALINA_HOME=/usr/local/src/tomcat #指定Tomcat目錄 $CATALINA_HOME/bin/catalina.sh $* #指定運行tomcat的腳本
配置可執行權限
[root@juny-18 src]#
chmod +x /etc/init.d/tomcat
啓動Tomcat
[root@juny-18 src]#
/etc/init.d/tomcat start
Using CATALINA_BASE: /usr/local/src/tomcat
Using CATALINA_HOME: /usr/local/src/tomcat
Using CATALINA_TMPDIR: /usr/local/src/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/src/tomcat/bin/bootstrap.jar:/usr/local/src/tomcat/bin/tomcat-juli.jar
Tomcat started.
查看8080端口是否監聽
[root@juny-18 src]#
netstat -anput | grep 8080
tcp6 0 0 :::8080 :::* LISTEN 3987/java
Tomcat安裝結束
寫一個啓動腳本
爲了用systemctl start tomcat
[root@juny-18 src]#
1 vim /lib/systemd/system/tomcat.service
[Unit] Description=tomcat After=network.target [Service] Type=forking ExecStart=/etc/init.d/tomcat start ExecStop=/etc/init.d/tomcat stop PrivateTmp=true [Install] WantedBy=multi-user.target
修改權限爲754
[root@juny-18 src]# 1 chmod 754 /lib/systemd/system/tomcat.service
添加到隨機啓動
[root@juny-18 src]#
1 systemctl enable tomcat
Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat.service to /usr/lib/systemd/system/tomcat.service.
[root@juny-18 tomcat]# vim conf/tomcat-users.xml
去掉註釋
修改成
角色說明
1:「manager-gui」:Allows access to the html interface(容許經過web的方式登陸查看服務器信息)。
2:「manager-script」: Allows access to the plain text interface(容許以純文本的方式訪問)。
3:「manager-jmx」: Allows access to the JMX proxy interface(容許jmx的代理訪問)。
4:「manager-status」: Allows access to the read-only status pages(容許以只讀狀態訪問)。
保存退出、由於是tomcat9 因此還要修改一個地方
增長一個配置文件
[root@juny-18 tomcat]# vim conf/Catalina/localhost/manager.xml
<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager"> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" /> </Context>
重啓tomcat
[root@juny-18 tomcat]#
1 /etc/init.d/tomcat stop
Using CATALINA_BASE: /usr/local/src/tomcat
Using CATALINA_HOME: /usr/local/src/tomcat
Using CATALINA_TMPDIR: /usr/local/src/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/src/tomcat/bin/bootstrap.jar:/usr/local/src/tomcat/bin/tomcat-juli.jar
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[root@juny-18 tomcat]#
1 /etc/init.d/tomcat start
Using CATALINA_BASE: /usr/local/src/tomcat
Using CATALINA_HOME: /usr/local/src/tomcat
Using CATALINA_TMPDIR: /usr/local/src/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/src/tomcat/bin/bootstrap.jar:/usr/local/src/tomcat/bin/tomcat-juli.jar
Tomcat started.
測試登陸管理界面
查看部署狀況