16.1 Tomcat介紹
16.2 安裝jdk
16.3 安裝Tomcat
16.4 配置Tomcat監聽80端口
16.5/16.6/16.7 配置Tomcat虛擬主機
16.8 Tomcat日誌php
擴展
java容器比較 http://my.oschina.net/diedai/blog/271367
http://www.360doc.com/content/11/0618/21/16915_127901371.shtml
j2ee、j2se、ejb、javabean、serverlet、jsp之間關係 http://bbs.csdn.net/topics/50015576
tomcat server.xml配置詳解 http://blog.csdn.net/yuanxuegui2008/article/details/6056754
JAR、WAR包區別 http://blog.csdn.net/lishehe/article/details/41607725
html
1、Tomcat介紹java
Tomcat是Apache軟件基金會(Apache Software Foundation)的Jakarta項目中的一個核心項目,由Apache、Sun和其餘一些公司及我的共同開發而成。 java程序寫的網站用tomcat+jdk來運行。 tomcat是一箇中間件,真正起做用的,解析java腳本的是jdk。 jdk(java development kit)是整個java的核心,它包含了java運行環境和一堆java相關的工具以及java基礎庫。 最主流的jdk爲sun公司發佈的jdk,除此以外,其實IBM公司也有發佈JDK,CentOS上也能夠用yum安裝openjdk。 咱們已經學過了LAMP和LNMP架構;針對的開發語言是PHP;能夠說PHP是一門開發Web程序很是流行的語言;早期比較流行的是asp,是在windows平臺上運行的一種編程語言;可是由於安全性不高;因此愈來愈多作網站的人用php去開發網站,相對來講也是比較安全的。 除了PHP外,還有一門語言叫java;java是一門很是龐大的開發語言;不只僅是能夠開發開網站;也能夠開發大型的軟件、工具、甚至是遊戲均可以;tomcat其實是一箇中間件,用來運行Java語言寫的網站;那咱們php寫的代碼,要用php去解析;java就要用tomcat加上JDK一塊兒去解析。
2、安裝jdkmysql
官網下載地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmllinux
下載好jdk,用xftp傳輸到linux虛擬機root下nginx
mv jdk-8u211-linux-x64.tar.gz /usr/local/src/ 移動到src目錄下web
tar zxvf jdk-8u211-linux-x64.tar.gz 解壓sql
du -sh jdk1.8.0_211/ 查看大小數據庫
mv jdk1.8.0_211/ /usr/local/jkd1.8 //移動並更名apache
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
source /etc/profile //加載服務
java -version //查看java版本 正常顯示,即安裝成功
3、安裝Tomcat
其實Tomcat只是一箇中間件,真正起做用的就是已經安裝的jdk。沒有Tomcat還不能夠,他的做用就是監聽8080;8005;8009端口。假如說,訪問站點,須要一個webserver,而Tomcat就能夠理解爲webserver!Tomcat依賴於jdk
cd /usr/local/src
官網地址:http://tomcat.apache.org/ 進行下載,傳到linux服務器上
tar zxvf apache-tomcat-8.5.41.tar.gz 解壓
mv apache-tomcat-8.5.41 /usr/local/tomcat 移動並更名爲tomcat
開啓服務與關閉服務,不支持restart
/usr/local/tomcat/bin/startup.sh //啓動服務
/usr/local/tomcat/bin/shutdown.sh //關閉服務
netstat -lntp |grep java 查看監聽端口
三個端口釋義:
8080爲提供web服務的端口;
8005爲管理端口;//顯示調用會慢
8009端口爲第三方服務調用的端口,好比httpd和Tomcat結合時會用到
systemctl stop firewalld 關閉防火牆
systemctl disable firewalld 移除
瀏覽器訪問其默認主頁:192.168.67.3:8080
4、配置Tomcat監聽80端口
vim /usr/local/tomcat/conf/server.xml 把8080端口改成80端口
netstat -lntp |grep 80 此時80端口被nginx佔用
/etc/init.d/nginx stop //關閉nginx服務,關閉後80端口沒有出現,在從新關閉開啓服務
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
此時再在瀏覽器測試8080,已經打不開網頁,而用80就能夠
5、配置Tomcat的虛擬主機
vim /usr/local/tomcat/conf/server.xml 增長虛擬主機,編輯server.xml,在</Host>下面增長以下內容
<Host name="www.123.cn" appBase="" unpackWARs= "true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/> </Host>
以上代碼關鍵詞釋義:
name 定義域名;
appBase 定義應用的目錄,Java的應用一般是一個war的壓縮包,只須要將war的壓縮包放到appBase目錄下面便可,一般是須要把war包直接放到該目錄下面,它會自動解壓成一個程序目錄
unpackWARs=」true」 是否自動解壓;(也就是說,當咱們往站點目錄裏面直接上傳一個war的包,它會自動解壓)
docBase,這個參數用來定義網站的文件存放路徑,若是不定義,默認是在appBase/ROOT下面,定義了docBase就以該目錄爲主了,其中appBase和docBase能夠同樣。在這一步操做過程當中,可能會遇到過訪問404的問題,其實就是docBase沒有定義對。
試驗準備:
下載站點程序zrlog :https://www.zrlog.com/download
下載完成後使用xftp,傳輸到服務器上,下載下來的叫ROOT跟系統中的文件同名,解壓會覆蓋,更名成zrlog-release
appBase默認路徑在 ls /usr/local/tomcat/webapps/
把此war包,複製一份到/usr/local/tomcat/webapps/下,在此目錄下會自動解壓
mv zrlog-release zrlog 爲了防止再次自動解壓被覆蓋,更名爲zrlog,用zrlog目錄作測試
準備zrlog須要使用的數據庫
create database zrlog; 建立數據庫 grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by 'tobe'; 建立zrlog用戶和密碼tobe mysql -uzrlog -ptobe -h127.0.0.1 使用新用戶,及密碼登陸,有zrlog數據庫
在瀏覽器中輸入:http://192.168.67.3/zrlog ,填寫安裝信息,把剛纔建立的數據庫信息填上,而後下一步繼續添加,出現安裝完成,點擊「點擊查看」
點擊管理,進入後臺操做,在後臺寫一篇文章,隨時保存,點擊發布,便可在主頁查看新發布的內容
不讓http://192.168.67.3/zrlog/顯示最後的zrlog目錄名
vim /usr/local/tomcat/conf/server.xml 編輯配置文件,查看域名爲www.123.cn的虛擬主機
按虛擬主機配置文件,建立相應的網站目錄 mkdir /data/wwwroot/123.cn
把zrlog目錄下全部文件,移到新建立的網站目錄123.cn下
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
從新加載tomcat配置文件
/usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh netstat -lntp |grep 80
在windows的host文件下,配置www.123.cn,並在cmd下ping此域名
回到瀏覽器下,用域名www.123.cn訪問,此時獲得以下頁面
網站的圖標和一些重要信息都在/usr/local/tomcat/webapps/ROOT下
能夠在瀏覽器中輸入:192.168.67.3/tomcat-power.gif 訪問
6、Tomcat日誌
Tomcat日誌目錄位置/usr/local/tomcat/logs
日誌目錄下,各類日誌的做用:
catalina開頭的日誌爲Tomcat的綜合日誌,它記錄Tomcat服務相關信息,也會記錄錯誤日誌。
catalina.2019-xx-xx.log和catalina.out內容相同,前者會天天生成一個新的日誌。
host-manager和manager爲管理相關的日誌,其中host-manager爲虛擬主機的管理日誌。
localhost和localhost_access爲虛擬主機相關日誌,其中帶access字樣的日誌爲訪問日誌,不帶access字樣的爲默認虛擬主機的錯誤日誌。
訪問日誌默認不會生成,須要在server.xml中配置
vim /usr/local/tomcat/conf/server.xml
生成的日誌後綴,能夠在下圖處更改
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" //關鍵字logs prefix="localhost_access_log" suffix=".txt" //prefix定義訪問日誌的前綴名,suffix定義日誌後綴名 pattern="%h %l %u %t "%r" %s %b" /> //pattern定義日誌格式
給www.123.cn配置日誌
從新加載tomcat配置文件
/usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh
訪問123.cn,便可生成日誌
新增長的虛擬主機默認並不會生成相似默認虛擬主機的那個localhost.日期.log日誌,錯誤日誌會統一記錄到catalina.out中。 關於Tomcat日誌,你最須要關注catalina.out,當出現問題時,咱們應該第一想到去查看它。