1. 程式人生 > >CentOS配置Tomcat監聽80埠,虛擬主機

CentOS配置Tomcat監聽80埠,虛擬主機

Tomcat更改預設埠為80

更改的配置檔案是: /usr/local/tomcat/conf/server.xml

[root@test-a ~]# vim /usr/local/tomcat/conf/server.xml  # 找到 Connector port="8080" protocol="HTTP/1.1"修改為Connector port="80" 
[root@test-a ~]#
[root@test-a ~]# netstat -ntlp | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN                                                1711/nginx: master
[root@test-a ~]# /etc/init.d/nginx stop
Stopping nginx (via systemctl):                            [  OK  ]
[root@test-a ~]#
[root@test-a ~]# netstat -ntlp | grep 80

[root@test-a ~]# /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.
[root@test-a ~]#
[root@test-a ~]# netstat -ntlp | grep 80
tcp6       0      0 :::8009                 :::*                    LISTEN      2668/java
tcp6       0      0 :::80                   :::*                    LISTEN      2668/java
[root@test-a ~]#

CentOS通過Tomcat安裝zrlog部落格系統

  • vim /usr/local/tomcat/conf/server.xml
    其中<Host>和</Host>之間的配置為虛擬主機配置部分,name定義域名, appBase定義應用的目錄,Java的應用通常是一個war的壓縮包,只需要將war的壓縮包放到appBase目錄下面即可
[root@test-a src]# wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
--2018-12-14 08:54:46--  http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
Resolving dl.zrlog.com (dl.zrlog.com)... 124.193.230.187, 124.202.188.152, 124.202.188.151, ...
Connecting to dl.zrlog.com (dl.zrlog.com)|124.193.230.187|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7122027 (6.8M) [application/zip]
Saving to: ‘zrlog-1.7.1-baaecb9-release.war’

100%[================================================================================>] 7,122,027   2.52MB/s   in 2.7s

2018-12-14 08:54:54 (2.52 MB/s) - ‘zrlog-1.7.1-baaecb9-release.war’ saved [7122027/7122027]

[root@test-a src]# cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/

[root@test-a src]# ls /usr/local/tomcat/webapps/ # 可以看到war包被自動解壓了
docs  examples  host-manager  manager  ROOT  zrlog-1.7.1-baaecb9-release  zrlog-1.7.1-baaecb9-release.war
[root@test-a src]#
[root@test-a src]# mv /usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release /usr/local/tomcat/webapps/zrlog  # 重新命名
[root@test-a src]# ls /usr/local/tomcat/webapps/
docs  examples  host-manager  manager  ROOT  zrlog  zrlog-1.7.1-baaecb9-release.war
[root@test-a src]#
[root@test-a src]# ls /usr/local/tomcat/webapps/  # 重新命名後,又會自動解壓war包
docs  examples  host-manager  manager  ROOT  zrlog  zrlog-1.7.1-baaecb9-release  zrlog-1.7.1-baaecb9-release.war
[root@test-a src]# rm /usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release.war
rm: remove regular file ‘/usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release.war’? y

[root@test-a src]# ls /usr/local/tomcat/webapps/ # 刪除war包也會自動刪除對應解壓的目錄
docs  examples  host-manager  manager  ROOT  zrlog

[root@test-a src]#
[root@test-a src]# systemctl stop firewalld.service # 關閉防火牆進行訪問測試

訪問測試,進入安裝頁面

需要建立對應的資料庫及使用者

[root@test-a src]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.23 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, 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> create database zrlog;
Query OK, 1 row affected (0.04 sec)

mysql> grant all on zrlog.* to zrlog identified by 'test111';
Query OK, 0 rows affected, 1 warning (0.10 sec)

mysql> quit
Bye
[root@test-a src]# mysql -uzrlog -p # 測試用新使用者登入
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.23 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, 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> quit
Bye

填入mysql使用者名稱和密碼後下一步

填入管理員的使用者名稱密碼後完成安裝

進入主頁,說明安裝成功

Tomcat配置虛擬主機

  • vim /usr/local/tomcat/conf/server.xml
    其中<Host>和</Host>之間的配置為虛擬主機配置部分,name定義域名, appBase定義應用的目錄,Java的應用通常是一個war的壓縮包,只需要將war的壓縮包放到appBase目錄下面即可

  • 增加虛擬主機,編輯server.xml,在</Host>下面增加如下內容
    <Host name="www.666.cn" appBase="" unpackWARs= "true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="/data/wwwroot/666.cn/" debug="0" reloadable="true" crossContext="true"/>

</Host>

  • docBase,這個引數用來定義網站的檔案存放路徑,如果不定義,預設是在appBase/ROOT下面,定義了docBase就以該目錄為主了,其中appBase和docBase可以一樣。
    appBase為應用存放目錄,通常是需要把war包直接放到該目錄下面,它會自動解壓成一個程式目錄
[root@test-a src]# vim /usr/local/tomcat/conf/server.xml # 新增虛擬主機配置
[root@test-a ~]# mkdir /data/wwwroot/666.cn # 建立新站目錄
[root@test-a ~]# mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/666.cn/ # 把之前安裝的zrlog所有檔案移到虛擬站點
# 重新啟動
[root@test-a src]# /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@test-a src]# /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.

修改hosts指定www.666.cn的ip為192.168.77.134後訪問:

Tomcat 日誌

  • 路徑 /usr/local/tomcat/logs
  • 其中catalina開頭的日誌為Tomcat的綜合日誌,它記錄Tomcat服務相關資訊,也會記錄錯誤日誌。
  • catalina.2017-xx-xx.log和catalina.out內容相同,前者會每天生成一個新的日誌。
  • host-manager和manager為管理相關的日誌,其中host-manager為虛擬主機的管理日誌。
  • localhost和localhost_access為虛擬主機相關日誌,其中帶access字樣的日誌為訪問日誌,不帶access字樣的為預設虛擬主機的錯誤日誌。
  • 訪問日誌預設不會生成,需要在server.xml中配置一下。
  • 具體方法是在對應虛擬主機的<Host></Host>裡面加入下面的配置(假如域名為666.cn):
  • <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="666.cn_access" suffix=".log" pattern="%h %l %u %t %r %s %b" />

  • prefix定義訪問日誌的字首,suffix定義日誌的字尾,pattern定義日誌格式。新增加的虛擬主機預設並不會生成類似預設虛擬主機的那個localhost.日期.log日誌,錯誤日誌會統一記錄到catalina.out中。關於Tomcat日誌你最需要關注catalina.out,當出現問題時,應該第一想到去檢視它。