第二十六课预习任务

1.Tomcat介绍

1.1 什么是Tomcat

1.2 Tomcat 重要目录

2.安装jdk

2.1 下载jdk,并安装

2.1.2 安装jdk

3.安装Tomcat

3.1 下载tomcat并解压到相关目录

3.2 启动tomcat服务

4.配置Tomcat监听80端口

4.1 编辑tomcat服务配置文件

5.配置Tomcat虚拟主机

5.2 增加一个虚拟主机,并部署一个博客网站

5.2.1 编辑配置文件增加虚拟主机配置

5.2.2 下载zrlog并部署到虚拟主机

5.2.3 安装zrlog

5.2.4 利用自已设置的域名部署博客

6.Tomcat日志

6.1 查看tomcat相关日志

6.2 tomcat日志说明


1.Tomcat介绍

1.1 什么是Tomcat

Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。

由于 Tomcat 本身也内含了一个 HTTP 服务器,它也可以被视作一个单独的 Web 服务器。但是,不能将 Tomcat 和 Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP web server 不是捆绑在一起的。Tomcat 包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。

1.2 Tomcat 重要目录

  • /bin - Tomcat 脚本存放目录(如启动、关闭脚本)。 *.sh 文件用于 Unix 系统; *.bat 文件用于 Windows 系统。
  • /conf - Tomcat 配置文件目录。
  • /logs - Tomcat 默认日志目录。
  • /webapps - webapp 运行的目录。

2.安装jdk

2.1 下载jdk,并安装

2.1.1这个不能直接用wget下载,需要先到官网上面下载源码包再传到自已的系统中安装。

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2.1.2 我们可以使用之前搭建的ftp来传送文件

2.1.2 安装jdk

a.首先我们将相关源码包放到指定目录,并解压

[root@knightlai]# mv jdk-8u181-linux-x64.tar.gz  /usr/local/src/

[root@knightlai src]# tar xzvf jdk-8u181-linux-x64.tar.gz 
jdk1.8.0_181/lib/visualvm/profiler/modules/org-netbeans-lib-profiler-common.jar
jdk1.8.0_181/lib/missioncontrol/
jdk1.8.0_181/lib/missioncontrol/plugins/
jdk1.8.0_181/lib/missioncontrol/plugins/org.eclipse.equinox.p2.operations.nl_zh_4.4.0.v20140623020002.jar
jdk1.8.0_181/lib/missioncontrol/plugins/org.eclipse.equinox.p2.repository.nl_zh_4.4.0.v20140623020002.jar
jdk1.8.0_181/lib/missioncontrol/plugins/org.eclipse.equinox.p2.touchpoint.eclipse_2.1.200.v20140512-1650.jar
jdk1.8.0_181/lib/missioncontrol/plugins/org.eclipse.e4.core.di.extensions_0.12.0.v20140417-2033.jar
jdk1.8.0_181/lib/missioncontrol/plugins/org.eclipse.core.databinding.property.nl_ja_4.4.0.v20140623020002.jar
jdk1.8.0_181/lib/missioncontrol/plugins/org.eclipse.jetty.security_8.1.14.v20131031.jar
.......................................................................

b.添加java的相关环境变量

[root@knightlai src]# mv jdk1.8.0_181/ /usr/local/jdk1.8
//编辑环境变量文件增加以下几行
[root@knightlai src]# vim /etc/profile
export PATH=/usr/local/mysql/bin:$PATH
export JAVA_HOME=/usr/local/jdk1.8/
export JAVA_BIN=/usr/local/jdk1.8/bin
export JRE_HOME=/usr/local/jdk1.8/jre  
export PATH=$PATH:/usr/local/jdk1.8/bin:/usr/lcoal/jdk1.8/jre/bin
export CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar

c.检查jdk是否安装成功如果出现以下版本号就说明成功了!

[root@knightlai src]# java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

3.安装Tomcat

3.1 下载tomcat并解压到相关目录

[root@knightlai src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz
--2018-10-07 20:24:57--  https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz
Resolving mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
Connecting to mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.8.193|:443... connected.
............................................................
[root@knightlai src]# tar xzvf apache-tomcat-8.5.34.tar.gz 
apache-tomcat-8.5.34/conf/
apache-tomcat-8.5.34/conf/catalina.policy
apache-tomcat-8.5.34/conf/catalina.properties
apache-tomcat-8.5.34/conf/context.xml
apache-tomcat-8.5.34/conf/jaspic-providers.xml
apache-tomcat-8.5.34/conf/jaspic-providers.xsd
apache-tomcat-8.5.34/conf/logging.properties
apache-tomcat-8.5.34/conf/server.xml
apache-tomcat-8.5.34/conf/tomcat-users.xml
apache-tomcat-8.5.34/conf/tomcat-users.xsd
apache-tomcat-8.5.34/conf/web.xml
apache-tomcat-8.5.34/bin/
apache-tomcat-8.5.34/lib/
apache-tomcat-8.5.34/logs/
apache-tomcat-8.5.34/temp/
...................................................

3.2 启动tomcat服务

[root@knightlai src]# mv apache-tomcat-8.5.34 /usr/local/tomcat
//启动tomcat
[root@knightlai 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/jre
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

//查看tomcat进程是否启动
[root@knightlai src]# ps aux|grep tomcat
root      18102  2.5  8.7 2292036 87816 pts/1   Sl   20:29   0:04 /usr/local/jdk1.8/jre/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 -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -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      18152  0.0  0.0 112704   960 pts/1    S+   20:32   0:00 grep --color=auto tomcat


//查看监听端口
[root@knightlai src]# netstat -lnp |grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      833/nginx: master p 
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      18102/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      18102/java          
tcp6       0      0 :::8080                 :::*                    LISTEN      18102/java          
udp        0      0 127.0.0.1:802           0.0.0.0:*                           6137/rpc.statd  


http访问端口(默认为8080端口)
Shutdown远程停服务端口(默认为8005端口)
AJP端口(默认为8009端口)

4.配置Tomcat监听80端口

4.1 编辑tomcat服务配置文件

[root@knightlai src]# vim /usr/local/tomcat/conf/server.xml 
  <Connector port="80" protocol="HTTP/1.1" //这里修改为80
               connectionTimeout="20000"
               redirectPort="8443" />
//tomcat服务没有重启只能先关闭再开始
[root@knightlai 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/jre
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

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

5.配置Tomcat虚拟主机

5.1 配置tomcat默认虚拟主机

//这一段就是虚拟主机配置文件
[root@knightlai src]# vim /usr/local/tomcat/conf/server.xml 
<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
其中<Host>和</Host>之间的配置为虚拟主机配置部分,name定义域名,
appBase定义应用的目录,Java的应用通常是一个war的压缩包,你只需要将war的压缩包放到appBase目录下面即可。


//默认我们之前80端口被nginx占用了
[root@knightlai src]# netstat -lnp |grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      833/nginx: master p 
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      18102/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      18102/java          
tcp6       0      0 :::8080                 :::*                    LISTEN      18102/java          
udp        0      0 127.0.0.1:802           0.0.0.0:*                           6137/rpc.statd     
//停止nginx 
[root@knightlai src]# systemctl stop nginx

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

//再关闭tomcat服务再开启就可以看到tomcat以80端口开启了
[root@knightlai src]# !net
netstat -lnp |grep 80
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      18288/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      18288/java          
tcp6       0      0 :::80                   :::*                    LISTEN      18288/java          
udp        0      0 127.0.0.1:802           0.0.0.0:*                           6137/rpc.statd     

5.2 增加一个虚拟主机,并部署一个博客网站

5.2.1 编辑配置文件增加虚拟主机配置

[root@knightlai src]# vim /usr/local/tomcat/conf/server.xml 
<Host name="www.aaa.com" appBase="" autoDeploy="true" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">         
      <Context path="" docBase="/data/wwwroot/aaa.com" reloadable="true" /> 
    </Host> 

5.2.2 下载zrlog并部署到虚拟主机

[root@knightlai src]# wget http://dl.zrlog.com/release/zrlog.war
--2018-10-07 21:10:54--  http://dl.zrlog.com/release/zrlog.war
Resolving dl.zrlog.com (dl.zrlog.com)... 183.131.24.61
Connecting to dl.zrlog.com (dl.zrlog.com)|183.131.24.61|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9964428 (9.5M) [application/zip]
Saving to: ‘zrlog.war’

100%[=========================================================================================================================================>] 9,964,428   2.17MB/s   in 4.2s   

2018-10-07 21:10:59 (2.27 MB/s) - ‘zrlog.war’ saved [9964428/9964428]
//将zrlog复制到我们的虚拟主机目录下面
[root@knightlai src]# mv zrlog.war /usr/local/tomcat/webapps/
[root@knightlai src]# ls /usr/local/tomcat/webapps/
docs  examples  host-manager  manager  ROOT  zrlog  zrlog.war

5.2.3 安装zrlog

看到这个页面我们需要新建一个数据库zrlog和一个操作用户test

[root@knightlai src]# mysql -uroot -p123456 
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 20
Server version: 5.6.39 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.

//创建一个zrlog库文件
mysql> create database zrlog
    -> ;
Query OK, 1 row affected (0.10 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| db1                |
| mysql              |
| performance_schema |
| test               |
| zrlog              |
+--------------------+
6 rows in set (0.16 sec)

//新建一个test用户
mysql> grant all on  *.* to 'test' identified by '123456';
Query OK, 0 rows affected (0.11 sec)

点击下一步直接安装完成。

5.2.4 利用自已设置的域名部署博客

[root@knightlai webapps]# cat /usr/local/tomcat/conf/server.xml
</Host>
      <Host name="www.aaa.com" appBase="" autoDeploy="true" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">  
      <Context path="" docBase="/data/wwwroot/aaa.com" reloadable="true" />  
   </Host>  

//只要把zrlog网站文件复制到我们的域名目录下面
[root@knightlai webapps]# mv zrlog/*  /data/wwwroot/aaa.com/

我们可以通过配置的虚拟主机登录了!

6.Tomcat日志

6.1 查看tomcat相关日志

[root@knightlai aaa.com]# cd /usr/local/tomcat/logs/
[root@knightlai logs]# ls
catalina.2018-10-07.log  catalina.out  host-manager.2018-10-07.log  localhost.2018-10-07.log  localhost_access_log.2018-10-07.txt  manager.2018-10-07.log
07-Oct-2018 20:29:23.507 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/8.5.34
07-Oct-2018 20:29:23.676 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Sep 4 2018 22:28:22 UTC
07-Oct-2018 20:29:23.676 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         8.5.34.0
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            3.10.0-862.el7.x86_64
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/local/jdk1.8/jre
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.8.0_181-b13
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /usr/local/tomcat
07-Oct-2018 20:29:23.677 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /usr/local/tomcat
07-Oct-2018 20:29:23.678 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.p

.....................................................
其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。
其中catalina.2018-xx-xx.log和catalina.out内容相同,前者会每天生成一个新的日志。
host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。
localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。

6.2 tomcat日志说明

6.2.1 Tomcat 日志信息分为两类:

  • 访问日志信息,记录访问的时间,IP,访问的资料等相关信息。
  • 运行中的日志,主要记录运行的一些信息,尤其是一些异常错误日志信息。
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />123

参数详解:

className:官方说明必须按照默认配置不可更改。 
directory:日志文件位置。 
prefix:日志文件前缀。 
suffix:日志文件后缀。 
pattern:日志模式参数,设置参数很丰富,参数说明见下表。 
resolveHosts:如果这个值是true的话,tomcat会将这个服务器IP地址通过DNS转换为主机名,如果是false,就直接写服务器IP地址。

pattern 参数: 
     %a - 远端IP地址 
     %A - 本地IP地址 
     %b - 发送的字节数,不包括HTTP头,如果为0,使用”-” 
     %B - 发送的字节数,不包括HTTP头 
     %h - 远端主机名(如果resolveHost=false,远端的IP地址) 
     %H - 请求协议 
     %l - 从identd返回的远端逻辑用户名(总是返回 ‘-‘) 
     %m - 请求的方法(GET,POST,等) 
     %p - 收到请求的本地端口号 
     %q - 查询字符串(如果存在,以 ‘?’开始) 
     %r - 请求的第一行,包含了请求的方法和URI 
     %s - 响应的状态码 
     %S - 用户的session ID 
     %t - 日志和时间,使用通常的Log格式 
     %u - 认证以后的远端用户(如果存在的话,否则为’-‘) 
     %U - 请求的URI路径 
     %v - 本地服务器的名称 
     %D - 处理请求的时间,以毫秒为单位 
     %T - 处理请求的时间,以秒为单位

6.2.2  日志类型与级别

Tomcat 日志分为下面5类:

catalina 、 localhost 、 manager 、 admin 、 host-manager

每类日志的级别分为如下 7 种:

SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)

猜你喜欢

转载自blog.csdn.net/a1779078902/article/details/82992458