天天看點

Tomcat(介紹,JDK安裝,Tomcat安裝,配置Tomcat監聽80端口)

一、Tomcat介紹

  • 目前有很多網站是用Java編寫的,是以解析Java程式就必須有相關的軟體來完成,Tomcat就是其中之一
  • Tomcat是Apache軟體基金會,的Jakarta項目中的一個核心項目,由apache、sun和其他一些公司及個人共同開發而成,Tomcat技術先進,性能穩定而且免費,因而深受Java愛好者的喜歡,并得到部分開發商的認可,成為目前比較流行的web因公伺服器。
  • Java程式寫的網站用Tomcat+jdk來運作的。
  • tomcat是一個中間件,真正起作用的,解析java腳本是jdk。
  • jdk(java development kit)是整個Java的核心,它包含了java運作環境的一對java相關的工具以及java基礎庫。
  • 最主流的jdk為sun公司釋出的jdk,初次之外,其實IBM公司也有釋出JDK,Centos上也可以用yum安裝openjdk。
  • Tomcat是一個輕量級應用伺服器,在中小型系統和并發使用者不是很多的場合下普遍被使用,是開發和調試java程式的首選,對于初學者來說,在一台機器上配置好Apache伺服器之後,可利用它相應HTML頁面的通路請求。
  • 實際上,Tomcat部分是Apache伺服器的拓展,但它是獨立運作的,是以當你運作Tomcat時,它是作為一個獨立的程序運作的。
  • 二、安裝JDK
  • jdk版本1.6,1.7,1.8
  • 一、下載下傳jdk:
  • 官網下載下傳位址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • 不同的作業系統版本使用不同的jdk版本
  • 我使用的是
    Tomcat(介紹,JDK安裝,Tomcat安裝,配置Tomcat監聽80端口)
  • 二、解壓jdk:
  • 下載下傳好後,我們可以使用xftp把jdk放到/usr/local/src下
  • 解壓jdk壓縮包:
  • [root@lnmp ~]# tar zxvf /usr/local/src/jdk-8u151-linux-x64.tar.gz
  • 三、設定環境變量:
  • [root@lnmp ~]# vim /etc/profile       (在最後加入以下幾行)
  • JAVA_HOME=/usr/local/jdk1.8/
  • JAVA_BIN=/usr/local/jdk1.8/bin
  • JRE_HOME=/usr/local/jdk1.8/jre
  • PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
  • CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
  • 執行以下指令,使配置生效:
  • [root@lnmp ~]# source /etc/profile
  • 檢查jdk有沒有安裝成功,配置是否正确:
  • [root@lnmp ~]#  java -version
  • 如果顯示了以下内容,說明配置正确:
  • java version "1.8.0_151"
  • Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
  • Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
  • 如果顯示的不同,可能系統調用了rpm的openjdk,不要随便解除安裝它,系統裡可能有某一個程式在使用它。我們隻需要做一個臨時處理就好:
  • mv /usr/bin/java /usr/bin/java_bak
  • source /etc/profile
  • 再次執行
  • [root@lnmp ~]#  java -version,顯示結果就正常了

三、安裝Tomcat

一、安裝Tomcat

[root@lnmp src]# cd /usr/local/src/

[root@lnmp src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.24/src/apache-tomcat-8.5.24-src.tar.gz

[root@lnmp src]# tar zxvf apache-tomcat-8.5.24-src.tar.gz

二、啟動Tomcat

因為是二進制包,是以免去了編譯的過程,啟動Tomcat,指令如下:

[root@lnmp bin]# /usr/local/tomcat/bin/startup.sh

在這裡,我遇到了2個錯誤和大家分享一下。

第一個錯誤:

-bash: /usr/local/tomcat/bin/startup.sh: 權限不夠

這個好解決,我ls -l看了一下bin/的權限,發現所有者沒有x執行權限

[root@lnmp tomcat]# ll

總用量 304

drw-r-xr-x.  2 root root   4096 12月 26 13:49 bin

用下面這條指令則可以解決:

[root@lnmp tomcat]# chmod -R u+x bin/

第二個錯誤:

Using CATALINA_BASE:   /usr/local/tomcat

Using CATALINA_HOME:   /usr/local/tomcat

Using CATALINA_TMPDIR: /usr/local/tomcat/temp

Using JRE_HOME:        /usr/local/jdk1.8

Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

touch: 無法建立"/usr/local/tomcat/logs/catalina.out": 沒有那個檔案或目錄

/usr/local/tomcat/bin/catalina.sh:行464: /usr/local/tomcat/logs/catalina.out: 沒有那個檔案或目錄

報錯沒有logs目錄,則建立一個就好。

[root@lnmp bin]# mkdir /usr/local/tomcat/logs

Tomcat started.

再次啟動時,提示啟動成功。

關閉服務用的指令是:

[root@lnmp bin]# /usr/local/tomcat/bin/shutdown.sh

Tomcat不支援restart,修改配置檔案前要關閉,修改完後再開就好。

三、檢視服務是否啟動成功以及調用的端口。

[root@lnmp src]# ps aux |grep tomcat

root      3144 45.4  8.0 2296132 81524 pts/0   Sl   14:25   0:05 /usr/local/jdk1.8/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 -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      3188  0.0  0.0 112680   976 pts/0    R+   14:25   0:00 grep --color=auto tomcat

[root@lnmp src]# netstat -lntp |grep java

tcp6       0      0 :::8080                 :::*                  LISTEN      3144/java           

tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      3144/java           

tcp6       0      0 :::8009                 :::*                  LISTEN      3144/java           

這裡需要記住的是三個端口号,8080為提供web服務的端口,8005為管理端口,8009端口位第三方服務調用的端口,比如httpd和Tomcat結合時會用到。

四、在浏覽器上測試。

為了友善起見,我們關閉防火牆。

[root@lnmp src]# systemctl stop firewalld

Tomcat(介紹,JDK安裝,Tomcat安裝,配置Tomcat監聽80端口)

四、配置Tomcat監聽80端口

預設直接輸入ip通路的是80端口,Tomcat通路的是8080端口,如果想修改為80,則需要修改server.xml檔案。

[root@lnmp src]# vim /usr/local/tomcat/conf/server.xml

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

修改為<Connector port="80" protocol="HTTP/1.1"

修改完後重新開機服務:(我們發現監聽80端口的是nginx)

[root@lnmp src]# /usr/local/tomcat/bin/shutdown.sh

[root@lnmp src]# /usr/local/tomcat/bin/startup.sh

[root@lnmp src]# netstat -lntp |grep 80

tcp        0      0 0.0.0.0:80              0.0.0.0:*           LISTEN      1232/nginx: master   tcp6       0      0 :::8009                 :::*                    LISTEN      3401/java          

遇到這種情況,我們把nginx關閉,把tomcat重新啟動,然後在觀察

[root@lnmp src]# systemctl stop nginx

繼續閱讀