剛剛訪問的Tomcat默認頁其實就是在appBase目錄下面,不過是在它子目錄ROOT里。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!– SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html –> <!– <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> –> <!– Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" –> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" //日志相關(guān) prefix="localhost_access_log" suffix=".txt" //日志相關(guān) pattern="%h %l "%r" %s %b" /> //日志相關(guān) </Host>
name="localhost //主機名
appBase="webapps" //應(yīng)用項目所在 ①知識點②知識點
unpackWARs="true" //是否自動解壓 “為true是會自動解壓”
知識點:tomcat他需要提供一個war的包,這里包含著運行這個網(wǎng)站的文件、配置、數(shù)據(jù)庫相關(guān)等等。
知識點:可以單獨的指定一個目錄,這個目錄里面存放的是 jsp 的文件,也就是說提供的不是war包
知識點:webapps的默認路徑為/usr/local/tomcat/webapps/,webapps目錄下,默認有5個目錄(docs examples host-manager manager ROOT)
增加虛擬主機
<Host name="www.123.cn"; appBase="" //寫空就不會于docBase相互干擾 unpackWARs= "true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/data/wwwroot/123.cn/" //自定義站點路徑,不使用自動安裝war的方式 debug="0" reloadable="true" crossContext="true"/> </Host>
1.docBase,這個參數(shù)用來定義網(wǎng)站的文件存放路徑,如果不定義,默認是在appBase/ROOT下面,定義了docBase就以該目錄為主了,其中appBase和docBase可以一樣。在這一步操作過程中很多同學(xué)遇到過訪問404的問題,其實就是docBase沒有定義對。 1.appBase為應(yīng)用存放目錄(實際上是一個相對路徑,相對于 /usr/local/tomcat/ 路徑),通常是需要把war包直接放到該目錄下面,它會自動解壓成一個程序目錄
為了方便測試,下載一個zrlog(java寫的blog站點應(yīng)用,輕量),進行測試
wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war 測試一
測試appbase自動解壓war包
[root@aminglinux-02 src]# mv zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/ [root@aminglinux-02 src]# ls /usr/local/tomcat/webapps/ docs examples host-manager manager ROOT zrlog-1.7.1-baaecb9-release zrlog-1.7.1-baaecb9-release.war
發(fā)現(xiàn)移動到webapps目錄以后,不一會就會生成一個目錄,說明配置是有效的
為了不影響實驗結(jié)果,先更改自動生成的目錄的名字,再移走webapps目錄下的war包;因為一旦移走war包,和war同名的目錄也會自動刪除;如果這個目錄下沒有和war同名的目錄,也會重復(fù)的解壓
[root@aminglinux-02 webapps]# mv zrlog-1.7.1-baaecb9-release zrlog [root@aminglinux-02 webapps]# ls docs examples host-manager manager ROOT zrlog zrlog-1.7.1-baaecb9-release zrlog-1.7.1-baaecb9-release.war [root@aminglinux-02 webapps]# mv zrlog-1.7.1-baaecb9-release.war /usr/local/src/ [root@aminglinux-02 webapps]# ls docs examples host-manager manager ROOT zrlog zrlog-1.7.1-baaecb9-release [root@aminglinux-02 webapps]# ls docs examples host-manager manager ROOT zrlog
這是就可以登錄站點,嘗試訪問了
安裝向?qū)В鋵嵕褪且粋€配置數(shù)據(jù)庫的過程
配置數(shù)據(jù)庫
現(xiàn)在就來創(chuàng)建一個供zrlog使用的數(shù)據(jù)庫,和賬戶
create databases zrlog ; grant all on zrlog.* to \\\’zrlog\\\’@localhost identified by \\\’aminglinux\\\’ ;
順手檢查一下mysql用戶是否正確
[root@aminglinux-02 webapps]# mysql -uzrlog -paminglinux Warning: Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 3 Server version: 5.6.35 MySQL Community Server (GPL) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type \\\’help;\\\’ or \\\’h\\\’ for help. Type \\\’c\\\’ to clear the current input statement. mysql> show databases; ——————– | Database | ——————– | information_schema | | test | | zrlog | ——————– 3 rows in set (0.00 sec)
然后回到瀏覽器,配置相關(guān)信息,之后就能訪問了
測試二
測試用docBase指定路徑,訪問是否生效
前面做了新增虛擬機配置,自然就需要生成對應(yīng)的目錄
mkdir /data/wwwroot/123.cn/
將之前的zrlog的文件移動到當(dāng)前目錄下
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/ [root@aminglinux-02 yulongxuan]# ls /data/wwwroot/123.cn/ admin/ assets/ error/ favicon.ico include/ install/ META-INF/ WEB-INF/
重啟服務(wù) 之前修改了配置文件,新增了虛擬主機,但并沒有重啟,所以沒有及時生效
[root@aminglinux-02 yulongxuan]# /usr/local/tomcat/bin/shutdown.sh 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/jre Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar [root@aminglinux-02 yulongxuan]# /usr/local/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/local/jdk1.8/jre Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Tomcat started.
然后通過瀏覽器訪問 www.123.cn
16.8 Tomcat日志 ls /usr/local/tomcat/logs 其中catalina開頭的日志為Tomcat的綜合日志,它記錄Tomcat服務(wù)相關(guān)信息,也會記錄錯誤日志。 其中catalina.2017-xx-xx.log和catalina.out內(nèi)容相同,前者會每天生成一個新的日志。 host-manager和manager為管理相關(guān)的日志,其中host-manager為虛擬主機的管理日志。 localhost和localhost_access為虛擬主機相關(guān)日志,其中帶access字樣的日志為訪問日志,不帶access字樣的為默認虛擬主機的錯誤日志
日志不會默認生成
•具體方法是在對應(yīng)虛擬主機的<Host></Host>里面加入下面的配置(假如域名為123.cn):
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="123.cn_access" suffix=".log" pattern="%h %l "%r" %s %b" />
•prefix定義訪問日志的前綴,suffix定義日志的后綴,pattern定義日志格式。新增加的虛擬主機默認并不會生成類似默認虛擬主機的那個localhost.日期.log日志,錯誤日志會統(tǒng)一記錄到catalina.out中。關(guān)于Tomcat日志,你最需要關(guān)注catalina.out,當(dāng)出現(xiàn)問題時,我們應(yīng)該第一想到去查看它。
更多關(guān)于云服務(wù)器,域名注冊,虛擬主機的問題,請訪問三五互聯(lián)官網(wǎng):m.shinetop.cn