Tomcat简介
名称由来:Tomcat最初是由 Sun的软件构架师詹姆斯·邓肯·戴维森开发的,后来他帮助将其变 为开源项目,并由Sun贡献给Apache软件基金会,由于大部分开源项目O'Reilly都会出一本相关的 书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名,因为他希 望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(公猫).而O'Reilly 出版的介绍Tomcat的书籍的封面也被设计成了一个公猫的形象。而Tomact的Logo兼吉祥物也被设计成了一只公猫。
其实Tomcat最早在开始研发的时侯并不叫这个名字,早期Tomcat项目的名字叫Catalina,所以 当我们安装完Tomcat 后会发现安装路径下面有很多和Catalina有关的目录和文件,而这些文件通常也是我们使用或者配置Tomcat 的重要文件。
应用场景
Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小 型系统和并发访问用户不是很多的场合下被普遍使用.是开发和调试JSP程序的首选.一般来说. Tomcat 虽然和Apache或者Nginx这些Web服务器一样,具有处理HTM.页面的功能,然而由于其处 理静态HTML的能力远不及Apache或者Nginx.所以Tomcat通常是作为一个Servlet和JSP容器,单 独运行在后端。
案例实施
1.实施准备
(1)关闭firewall防火墙。
[root@localhost ~]# systemctl stop firewalld
(2)在安装Tomcat 之前必须先安装JDK.JDK的全称是Java Development Kit,是Sun公司免费 提供的Java语言的软件开发工具包,其中包含Java虚拟机(JVM)。编写好的Java源程序经过编译 可形成Java字节码,只要安装了JDK,就可以利用JVM解释这些字节码文件,从而保证了Java的跨平台性。
在平台兼容性方面,JDK作为解释字节码文件并据此调用操作系统APl实现对应功能的Java虚 拟机,与操作系统类型和平台位数密切相关,因此存在不同类型的版本,而Tomcat 也具有上述特征, 默认情况下JDK已经安装,所以需要预先下载Tomcat,本章中所使用的Tomcat软件的源码包为 apache-tomcat-8.5.16. tar.gz。
2.查看JDK是否安装
运行java -version命令查看Java是否安装,如果没有安装需要自行下载安装。
[root@localhost ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
3.安装配置Tomcat
(1)解压apache-tomcat-8.5.16.tar.gz包。
[root@localhost ~]# rz -E //将源码包apache-tomcat-8.5.16.tar.gz拉入
rz waiting to receive.
[root@localhost ~]# tar xf apache-tomcat-8.5.16.tar.gz
(2)解压后生成apache-tomcat-8.5.16文件夹,将该文件夹移动到/usr/local/下,并改名为 tomcat8。
[root@localhost ~]# mv apache-tomcat-8.5.16/ /usr/local/tomcat8
(3)启动tomcat。
[root@localhost ~]# /usr/local/tomcat8/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat8
Using CATALINA_HOME: /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
Tomcat started.
Tomcat默认运行在8080端口,运行netstat命令查看8080端口监听的信息。
[root@localhost ~]# netstat -anpt | grep 8080
(4)打开浏览器访问测试:http:192.168.55.48:8080/ ,如果出现如图5.2所示的界面,则表示Tomcat 已经启动成功。
如果想关闭Tomcat,则运行/usr/local/tomcat8/bin/shutdown.sh命令。
4.Tomcat配置相关说明
Tomcat的主目录为/usr/local/tomcat8/
[root@localhost ~]# cd /usr/local/tomcat8/
[root@localhost tomcat8]# ll
总用量 92
drwxr-x---. 2 root root 4096 1月 14 00:38 bin
drwx------. 3 root root 254 1月 14 00:41 conf
drwxr-x---. 2 root root 4096 1月 14 00:38 lib
-rw-r-----. 1 root root 57092 6月 22 2017 LICENSE
drwxr-x---. 2 root root 197 1月 14 00:41 logs
-rw-r-----. 1 root root 1723 6月 22 2017 NOTICE
-rw-r-----. 1 root root 7064 6月 22 2017 RELEASE-NOTES
-rw-r-----. 1 root root 15946 6月 22 2017 RUNNING.txt
drwxr-x---. 2 root root 30 1月 14 00:38 temp
drwxr-x---. 7 root root 81 6月 22 2017 webapps
drwxr-x---. 3 root root 22 1月 14 00:41 work
5.Tomcat主配置文件说明
server.xml为Tcmcat 的主要配置文件,通过配置该文件,可以修改Tomcat 的启动端口、网站目 录,虚拟主机.开启https等重要功能。 整个server.xml由以下结构构成:<Server〉、〈Service>.<Connector/〉.<Engine〉、<Host〉. <Context>、</Context>、</Hlost>、</Engine>、</Service>和</Server>。
以下是默认安装后server.xml 文件的部分内容,其中<!-- -->内的内容是注释信息,黑色 斜体部分是我们需要注意和需要经常更改的部分。
[root@localhost ~]# cd /usr/local/tomcat8/conf
[root@localhost conf]# vim server.xml
6.Tomcat Server的组成部分说明
7.建立Web站点
(1)在根目录下建立一个web 目录,并在里面建立一个webapp1 目录,用于存放网站文件。
[root@localhost ~]# mkdir -pv /web/webapp1
mkdir: 已创建目录 "/web"
mkdir: 已创建目录 "/web/webapp1"
(2)在webapp1 目录下建立一个index.jsp的测试页面。
[root@localhost ~]# vim /web/webapp1/index.jsp //添加编辑下列语句
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP tset1 page</title>
</head>
<body>
<% out.println("Welcom to test site,http://www.test1.com");%>
</body>
</html>
(3)修改Tomcat的server.xml 文件。
定义一个虚拟主机,并将网站文件路径指向已经建立的/web/webapp1,在host段增加 context段。
[root@localhost ~]# vim /usr/local/tomcat8/conf/server.xml
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"> //找到此段添加下列语句
<Context docBase="/web/webapp1" path="" reloadable="false">
</Context>
(4)关闭Tomcat,再重新启动。
[root@localhost ~]# /usr/local/tomcat8/bin/shutdown.sh
[root@localhost ~]# /usr/local/tomcat8/bin/startup.sh
(5)通过浏览器访问http:192.168.55.48:8080/ 出现下图3所示的页面,说明该Tomcat 站点已经配置成功,并且已经能够运行JSP了。