tomcat的安装和使用

1.tomcat介绍

Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache,Sun和其他一些公司及个人共同开发而成

Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选.

Tomcat和Nginx,Apache(httpd),lighttpd等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Server和JSP容器,独立的Server容器是Tomcat的默认模式,.不过,Tomcat处理静态HTML的能力不如Nginx/Apache服务器.
其他JAVA容器还有resin,weblogic等

2.tomcat的安装

1.安装java环境
[root@zabbix-server ~]# yum install java-1.8.0 -y
2.部署tomcat
[root@zabbix-server opt]# cd /opt/
[root@zabbix-server opt]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.51/bin/apache-tomcat-8.5.51.tar.gz
[root@zabbix-server opt]# tar zxf apache-tomcat-8.5.51.tar.gz
[root@zabbix-server opt]# ln -s apache-tomcat-8.5.51 tomcat
[root@zabbix-server opt]# echo ‘export TOMCAT_HOME=/opt/tomcat’>>/etc/profile
[root@zabbix-server opt]# source /etc/profile
[root@zabbix-server opt]# /opt/tomcat/bin/version.sh
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.51
Server built: Feb 5 2020 22:26:25 UTC
Server number: 8.5.51.0
OS Name: Linux
OS Version: 3.10.0-514.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_242-b08
JVM Vendor: Oracle Corporation

3.tomcat目录介绍

[root@zabbix-server tomcat]# tree -L 1
.
├── bin #用以启动,关闭Tomcat或其他脚本功能的脚本(.bat和.sh)
├── BUILDING.txt
├── conf #tomcat配置文件
├── CONTRIBUTING.md #tomcat配置说明
├── lib #加载的lib组件
├── LICENSE
├── logs #日志
├── NOTICE
├── README.md
├── RELEASE-NOTES
├── RUNNING.txt
├── temp #临时文件
├── webapps #Web应用程序根目录
└── work #用以产生有JSP编译出的Servlet的.java和.class文件

webapps目录
[root@zabbix-server webapps]# tree -L 1
.
├── docs #tomcat帮助文档
├── examples #web应用
├── host-manager #管理
├── manager #管理
└── ROOT #默认网站根目录

4.启动tomcat

[root@zabbix-server bin]# ./startup.sh
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Tomcat started.

查看是否启动
[root@zabbix-server bin]# ps -ef | grep tomcat
root 7462 1 12 16:21 pts/0 00:00:02 /usr/bin/java -Djava.util.logging.config.file=/opt/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 /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start
root 7527 1507 0 16:22 pts/0 00:00:00 grep --color=auto tomcat

[root@zabbix-server bin]# ss -lntup|grep java
tcp LISTEN 0 100 :::8080 ::: * users:((“java”,pid=7462,fd=52))
tcp LISTEN 0 1 ::ffff:127.0.0.1:8005 ::: * users:((“java”,pid=7462,fd=63))

5.访问tomcat

访问 ip:8080
确保防火墙已经关闭
在这里插入图片描述

6.关闭tomcat

[root@zabbix-server opt]# /opt/tomcat/bin/shutdown.sh
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar

查看是否关闭tomcat
[root@zabbix-server opt]# ps -ef | grep “tomcat” | grep -v “grep”

7.tomcat配置文件介绍

[root@zabbix-server opt]# tree /opt/tomcat/conf/
/opt/tomcat/conf/
├── Catalina
│ └── localhost
├── catalina.policy
├── catalina.properties
├── context.xml
├── jaspic-providers.xml
├── jaspic-providers.xsd
├── logging.properties
├── server.xml #主配置文件
├── tomcat-users.xml #g管理用户配置文件
├── tomcat-users.xsd
└── web.xml

8.tomcat主配置文件Server.xml详解

 顶级组件:位于整个配置的顶层,如server
 容器类组件:可以包含其它组件的组件,如server,engine,host,context
 连接器组件:连接用户请求至tomcat,如connector
 被嵌套类组件:位于一个容器内,不能包含其它组件,如Valve,logger.

<server>
     <service>
     <connector />
     <engine>
     <host>
     <context></context>
     </host>
     <host>
     <context></context>
     </host>
     </engine>
     </service>
</server>

组件详情

engine:核心容器组件,catalina引擎,负责通过connector接受用户请求,并处理请求,将请求转至对应的虚拟主机host
host:类似于httpd中的虚拟主机,一般而言支持基于FQDN的虚拟主机
context:定义一个应用程序,是一个最内层的容器类组件(不能再嵌套).篇日志context的主要目的指定对应的webapp的根目录,类似于httpd的alias,其还能为webapp指定额外的属性,如部署方式等.
connector:接收用户请求,类似于httpd的listen配置监听端口.
service(服务):将connector关联至engine,因此一个service内部可以有多个connector,但只能有一个引擎engine.service内部有两个connector,一个engine.因此一个service内部可以有多个connector.
server:表示一个运行于JVM中的tomcat实例
Valve:阀门,拦截请求并在将其转至对应的webapp前进行某种处理操作,可以用于任何容器中,比如记录日志(access log valve),基于IP做访问控制(remote address filter valve).
logger: 日志记录器,用于记录组件内部的状态信息,可以用于除context外的任何容器中.
realm:可以用于任意容器类的组件中,关联一个用户认证库,实现认证和授权.可以关联的认证库有两种:UserDatabaseRealm,MemoryRealm和JDBCRealm
UserDatabaseRealm:使用JNDI自定义的用户认证库.
MemoryRealm:认证信息定义在tomcat-users.xml中
JDBCRealm:认证信息定义在数据库中,并通过JDBC连接至数据库查找认证用户.

tomcat启动会启动三个端口8080,8009,8005

[root@zabbix-server opt]# lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 7930 root 52u IPv6 83977 0t0 TCP *:webcache (LISTEN)
[root@zabbix-server opt]# lsof -i :8009
[root@zabbix-server opt]# lsof -i :8005
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 7930 root 63u IPv6 84071 0t0 TCP localhost:mxi (LISTEN)

但是8009没有打开,在server.xml配置文件里面注释掉了,需要去掉注释
在这里插入图片描述
再次查看tomcat
[root@zabbix-server conf]# lsof -i :8009
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 8151 root 54u IPv6 84906 0t0 TCP localhost:8009 (LISTEN)

9.tomcat多实例配置

1.复制实例目录
[root@zabbix-server opt]# cp -a apache-tomcat-8.5.51/ tomcat_01
[root@zabbix-server opt]# cp -a apache-tomcat-8.5.51/ tomcat_02
2.修改端口号
[root@zabbix-server opt]# sed -i ‘s#8005#8006#g’ tomcat_01/conf/server.xml
[root@zabbix-server opt]# sed -i ‘s#8009#8010#g’ tomcat_01/conf/server.xml
[root@zabbix-server opt]# sed -i ‘s#8080#8081#g’ tomcat_01/conf/server.xml
[root@zabbix-server opt]# sed -i ‘s#8005#8007#g’ tomcat_02/conf/server.xml
[root@zabbix-server opt]# sed -i ‘s#8009#8011#g’ tomcat_02/conf/server.xml
[root@zabbix-server opt]# sed -i ‘s#8080#8082#g’ tomcat_02/conf/server.xml
3.启动tomcat
[root@zabbix-server opt]# /opt/tomcat_01/bin/startup.sh
Using CATALINA_BASE: /opt/tomcat_01
Using CATALINA_HOME: /opt/tomcat_01
Using CATALINA_TMPDIR: /opt/tomcat_01/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat_01/bin/bootstrap.jar:/opt/tomcat_01/bin/tomcat-juli.jar
Tomcat started.
[root@zabbix-server opt]# /opt/tomcat_02/bin/startup.sh
Using CATALINA_BASE: /opt/tomcat_02
Using CATALINA_HOME: /opt/tomcat_02
Using CATALINA_TMPDIR: /opt/tomcat_02/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat_02/bin/bootstrap.jar:/opt/tomcat_02/bin/tomcat-juli.jar
Tomcat started.
4.查看tomcat启动的端口
[root@zabbix-server opt]# ss -lntup|grep java
tcp LISTEN 0 100 ::ffff:127.0.0.1:8010 ::😗 users:((“java”,pid=8666,fd=57))
tcp LISTEN 0 100 ::ffff:127.0.0.1:8011 ::😗 users:((“java”,pid=8710,fd=57))
tcp LISTEN 0 100 :::8080 ::😗 users:((“java”,pid=7930,fd=52))
tcp LISTEN 0 100 :::8081 ::😗 users:((“java”,pid=8666,fd=52))
tcp LISTEN 0 100 :::8082 ::😗 users:((“java”,pid=8710,fd=52))
tcp LISTEN 0 1 ::ffff:127.0.0.1:8005 ::😗 users:((“java”,pid=7930,fd=63))
tcp LISTEN 0 1 ::ffff:127.0.0.1:8006 ::😗 users:((“java”,pid=8666,fd=68))
tcp LISTEN 0 1 ::ffff:127.0.0.1:8007 ::😗 users:(("jav
5.访问页面 ip:8081 ip:8082

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值