Tomcat详解(下)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

配置监听端口

1、编辑配置文件

1
2
3
4
[root@plinuxos ~] # vim /usr/local/tomcat/conf/server.xml 
     <Connector port= "80"  protocol= "HTTP/1.1"     ##改成80端口
                connectionTimeout= "20000"
                redirectPort= "8443"  />

2、重启服务

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@plinuxos ~] # /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@plinuxos ~] # /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.

3、检查效果

本地验证:

1
2
3
4
[root@plinuxos ~] # netstat -lntp |grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      107670 /java         
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      107670 /java         
tcp6       0      0 :::8009                 :::*                    LISTEN      107670 /java

如果被nginx占用,使用/etc/init.d/nginx stop命令关闭nginx。

远端验证:

wKiom1mleJySkYbJAAGRi4lFcO8087.png-wh_50


配置虚拟主机

1、编辑配置文件

1
2
3
4
5
6
7
8
9
10
[root@plinuxos ~] # vim /usr/local/tomcat/conf/server.xml
......
       <Host   name= "www.abc.com"  appBase= ""           ##appBase和docBase二取一
            unpackWARs=  "true"  autoDeploy= "true"
            xmlValidation= "false"  xmlNamespaceAware= "false" >
            <Context path= ""  docBase= "/data/wwwroot/abc.com/"  debug= "0"  reloadable= "true"  crossContext= "true" />
       < /Host >
     < /Engine >
   < /Service >
< /Server >

<Host>和</Host>之间的配置为虚拟主机配置部分,name定义域名;

appBase定义应用的目录,Java的应用通常是一个jar的压缩包,只需要将jar的压缩包放到appBase目录下面即可;

docBase,这个参数用来定义网站的文件存放路径,如果不定义,默认是在appBase/ROOT下面,定义了docBase就以该目录为主了,其中appBase和docBase可以一样,访问404的问题,其实就是docBase没有定义准确;

appBase为应用存放目录,通常是需要把war包直接放到该目录下面,它会自动解压成一个程序目录。


2、下载与解压zrlog

1
2
3
4
5
6
7
[root@plinuxos ~] # cd /usr/local/src
[root@plinuxos src] # wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war 
[root@plinuxos src] # cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/
[root@plinuxos src] # cd /usr/local/tomcat/webapps/
[root@plinuxos webapps] # ls           ##自动解压
docs  examples  host-manager  manager  ROOT  zrlog-1.7.1-baaecb9-release  zrlog-1.7.1-baaecb9-release.war
[root@plinuxos webapps] # mv zrlog-1.7.1-baaecb9-release zrlog

3、打开80端口

1
[root@plinuxos webapps] # iptables -I INPUT -p tcp --dport 80 -j ACCEPT

4、远程访问

wKioL1mle_aQ6LFaAAD6OCVP1Hg073.png-wh_50

5、配置数据库

1)检查mysql状态

1
2
3
4
[root@plinuxos mysql] # ps aux|grep mysql
root     109814  0.0  0.0  11760  1588 pts /0     S    22:43   0:00  /bin/sh  /usr/local/mysql/bin/mysqld_safe  --datadir= /data/mysql  --pid- file = /data/mysql/plinuxos .pid
mysql    109922  2.4 13.4 973052 449528 pts /0    Sl   22:43   0:00  /usr/local/mysql/bin/mysqld  --basedir= /usr/local/mysql  --datadir= /data/mysql  --plugin- dir = /usr/local/mysql/lib/plugin  --user=mysql --log-error= /data/mysql/plinuxos .err --pid- file = /data/mysql/plinuxos .pid
root     109971  0.0  0.0 112648   968 pts /0     S+   22:44   0:00  grep  --color=auto mysql

2)创建数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@plinuxos mysql] # /usr/local/mysql/bin/mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection  id  is 1
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> create database zrlog;
Query OK, 1 row affected (0.00 sec)

3)用户授权

1
2
3
4
5
mysql> grant all on zrlog.* to  'zrlog' @127.0.0.1 identified by  '123456' ;
Query OK, 0 rows affected (0.01 sec)
 
mysql>  exit ;
Bye

4)检查数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[root@plinuxos mysql] # /usr/local/mysql/bin/mysql -uzrlog -h127.0.0.1 -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 2
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)

6、配置zrlog

wKioL1mlgQbRxdfiAACjm4IjVW4640.png-wh_50

wKiom1mlgRmCLhXtAAB5IXDMyrE570.png-wh_50

wKioL1mlgQbC6FYuAABPBJetuhw523.png-wh_50

wKiom1mlgRrTi6YzAABz_U_hw_8038.png-wh_50

wKiom1mlgRrSTS3zAABA5XBfky0713.png-wh_50

wKioL1mlgQfScR2iAADrp4pTfDw687.png-wh_50

7、使用域名访问zrlog

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@plinuxos mysql] # mkdir /data/wwwroot/abc.com
[root@plinuxos mysql] # mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/abc.com/
[root@plinuxos mysql] # /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@plinuxos mysql] # /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.

8、测试效果

在本端HOSTS文件内添加解析。

wKiom1mlhRGA9kFXAADtu8xrVX8818.png-wh_50


Tomcat日志

1、查看tomcat日志目录

1
2
[root@plinuxos mysql] # ls /usr/local/tomcat/logs
catalina.2017-08-29.log  catalina.out  host-manager.2017-08-29.log  localhost.2017-08-29.log  localhost_access_log.2017-08-29.txt  manager.2017-08-29.log

▎日志分为四大类:

1)其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。

2)其中catalina.2017-xx-xx.log和catalina.out内容相同,带日期的每天生成一个新的日志。

3)host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。

4)localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。



2、访问日志默认不会生成,需要在server.xml中配置。

具体方法是在对应虚拟主机的<Host></Host>里面加入下面的配置:

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

         prefix="abc.com_access" suffix=".log"

         pattern="%h %l %u %t &quot;%r&quot; %s %b" />

3、prefix定义访问日志的前缀,suffix定义日志的后缀,pattern定义日志格式。新增加的虚拟主机默认并不会生成类似默认虚拟主机的那个localhost.日期.log日志,错误日志会统一记录到catalina.out中。关于Tomcat日志,你最需要关注catalina.out,当出现问题时,我们首先应该想到去查看它。













本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1960966,如需转载请自行联系原作者


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
101
分享
相关文章
框架源码私享笔记(01)Tomcat核心架构功能 | 配置详解
本文首先分享了《活出意义来》一书序言中的感悟,强调成功如同幸福,不是刻意追求就能得到,而是全心投入时的副产品。接着探讨了Tomcat的核心功能与架构解析,包括网络连接器(Connector)和Servlet容器(Container),并介绍了其处理HTTP请求的工作流程。文章还详细解释了Tomcat的server.xml配置文件,涵盖了从顶级容器Server到子组件Connector、Engine、Host、Context等的配置参数及作用,帮助读者理解Tomcat的内部机制和配置方法。
Tomcat如何配置PFX证书?
【10月更文挑战第2天】Tomcat如何配置PFX证书?
398 7
Tomcat如何配置JKS证书?
【10月更文挑战第2天】Tomcat如何配置JKS证书?
647 4
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件
这篇文章介绍了如何在Mac系统下配置Java JDK、Maven和Tomcat的环境变量,包括配置文件的选择、解决环境变量在zsh shell中无效的问题、查看和设置系统环境变量的方法,以及JDK和Maven的下载、配置和测试步骤。
2026 1
Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件
docker应用部署---Tomcat的部署配置
这篇文章介绍了如何使用Docker部署Tomcat服务器,包括搜索和拉取Tomcat镜像、创建容器并设置端口映射和目录映射,以及如何创建一个HTML页面并使用外部机器访问Tomcat服务器。
docker应用部署---Tomcat的部署配置
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等