【2018.06.27學習筆記】【linux高級知識 16.4-16.8】

16.4 配置Tomcat監聽80端口

tomcat默認監聽8080端口,可是用戶輸入域名必需要寫上端口號,這樣體驗不友好。php

能夠把tomcat的監聽端口改成80,域名中的80端口默承認以省略。html

自定義端口:8080改成80,編輯配置文件server.xmlmysql

[root@nginx ~]# vim /usr/local/tomcat/conf/server.xml
 <Connector port="80" protocol="HTTP/1.1"   //port="8080"改成"80"
               connectionTimeout="20000"
               redirectPort="8443" />

若是安裝後nginx,先中止服務,nginx也是監聽80端口,會衝突(生產中別停nginx,能夠用nginx去代理tomcat)。再重啓tomcat服務linux

[root@nginx ~]# /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
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@nginx ~]# /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
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

訪問驗證:直接輸入192.168.87.128,不加端口號nginx

16.5/16.6/16.7 配置Tomcat虛擬主機

一個ip下有多個域名,一個域名訪問一個網站,因此一個ip能夠訪問多個網站,經過配置tomcat的虛擬主機實現web

編輯tomcat配置文件:<Host> </Host> 配置段sql

vim /usr/local/tomcat/conf/server.xml
<Host name="www.123.com"  appBase="webapps"    //name是網站域名  appBase是應用項目的程序:在/tomcat/webapps/ROOT目錄下,是提供一個war包壓縮文件,不像html和php文件
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
            <context path="" docBase="/data/wwwroot/123.com/"   //若是不是指定appBase的war包,而是單獨指定一個目錄,存放jsp文件,就用docBase來定義。
              debug="0" reloadable="true" crossContext="true">
</Host>
##war包 包含了運行網站的文件,配置,jsp代碼,數據庫,靜態文件等。

用zrlog博客演示:若是定義了appBase,把war包放在webapps目錄下,war包會自動解壓成目錄,刪除war包,解壓的目錄也會自動刪除。數據庫

rz //Windows下載,rz工具傳到linux系統
[root@nginx src]# cp ROOT.war /usr/local/tomcat/webapps/zrlog.war   //拷貝war包到定義的appBase下
[root@nginx src]# cd /usr/local/tomcat/webapps/
[root@nginx webapps]# ls
docs  examples  host-manager  manager  ROOT  zrlog  zrlog.war   //自動解壓了zrlog的war包

訪問zrlog:apache

進入了zrlog的安裝嚮導,設置數據庫等信息:bootstrap

[root@nginx webapps]# mysql -uroot -p7826078
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
mysql> create database zrlog;   //建立zrlog的庫
Query OK, 1 row affected (0.02 sec)

mysql> grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by '7826078';   //建立zrlog數據庫的用戶,受權進行操做庫
Query OK, 0 rows affected (0.01 sec)

[root@nginx webapps]# mysql -uzrlog -h127.0.0.1 -p7826078   //用zrlog登陸mysql
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 8
Server version: 5.6.36 MySQL Community Server (GPL)

Copyright (c) 2000, 2017, 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.01 sec)

填寫數據庫信息:

設置管理後臺用戶名和密碼,以後就完成安裝,便可使用zrlog了:

登陸後臺後,編寫一篇博客:

根據以前server.xml的虛擬主機配置 123.com,咱們能夠把zrlog目錄放到docBase下,就能夠直接訪問w ww.123.com 域名訪問zrlog博客了。

[root@nginx ~]# mv /usr/local/tomcat/webapps/zrlog /data/wwwroot/123.com
[root@nginx ~]# cd /data/wwwroot/123.com/
[root@nginx 123.com]# ls
admin  assets  error  favicon.ico  include  META-INF  WEB-INF

修改配置文件後,重啓tomcat服務

[root@nginx 123.com]# /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
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@nginx 123.com]# /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
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

把www .123.com 加入Windows的hosts文件,經過瀏覽器訪問 www .123.com 就能夠訪問zrlog博客了

localhost能夠訪問 /usr/local/tomcat/webapps/ROOT下的網站

16.8 Tomcat日誌

[root@nginx ~]# cd /usr/local/tomcat/logs/   //tomcat日誌目錄
[root@nginx logs]# ls
catalina.2018-06-26.log  host-manager.2018-06-26.log  localhost.2018-06-27.log             manager.2018-06-26.log
catalina.2018-06-27.log  host-manager.2018-06-27.log  localhost_access_log.2018-06-26.txt  manager.2018-06-27.log
catalina.out             localhost.2018-06-26.log     localhost_access_log.2018-06-27.txt

catalina開頭的日誌是綜合日誌,記錄服務相關的信息的,也會記錄錯誤信息(啓動失敗等):關注「嚴重」的信息

catalina.2018-xx-xx.log和catalina.out內容相同,前者會天天生成一個新的日誌

host-manager.2018-06-27.log和manager.2018-06-27.log是管理相關的日誌:host-manager是虛擬主機管理日誌

localhost.2018-06-26.log和localhost_access_log.2018-06-26.txt是虛擬主機相關日誌

localhost_access是虛擬主機訪問日誌,localhost是默認虛擬主機的錯誤日誌

虛擬主機的訪問日誌不會自動生成,須要在配置文件裏定義:

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"   //prefix日誌名前綴、suffix日誌名後綴
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />  //日誌格式

新增長的虛擬主機默認不會生成localhost.日期.log日誌,錯誤日誌則記錄在catalina.out日誌中

Tomcat中最須要關注的是catalina.out日誌,出問題的時候第一時間去查看它。

相關文章
相關標籤/搜索