深入浅析Centos 7系统的Tomcat服务器

一、tomcat的由来

名称由来:tomcat最初是由Sun的软件架构师詹姆斯 邓肯 戴维森开发的。后来他帮助将其变为开源项目,并由Sun贡献给Apache软件基金会。由于大部分开源项目O'Reilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为tomcat(公猫)。

1、Tomcat应用场景

Tomcat服务器是一个免费的开源web应用服务器,属于轻量级应用服务器,在中小型系统和并发用户不是很多的场合中被普遍使用,是开发和测试JSP程序的首选。一般来说,Tomcat虽然和apache或者Nginx这些web服务器一样,具有处理HTML页面的功能,然而由于其处理静态页面的能力远不如apache或者Nginx,所以Tomcat一般是作为一个servlet和JSP容器,单独运行在后端。

2、Tomcat所需的依赖软件

在安装Tomcat之前必须安装JDK,JDK是sun公司免费提供的Java语言的软件开发工具包,其中包含Java虚拟机(JVM)。编写好的Java源程序经过编译可形成Java字节码,只要安装了JDK就可以利用JVM解释这些字码文件,从而保证Java的跨平台性。

在平台兼容性方面,JDK作为解释字节码文件并据此调用操作系统的API实现对应功能的Java虚拟机,与操作系统类型和平台位数密切相关,因此存在不同类型的版本,而Tomcat也具有这些特征,(Centos 7.0默认情况下JDK已经安装,如果要是Centos 6.0操作系统就需要自行安装了)。

1)查看JDK是否安装

[root@centos02 ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

2)Centos 6.0安装JDK

[root@centos02 ~]# mount /dev/cdrom /mnt/ <!--挂载Linux光盘-->
mount: /dev/sr0 写保护,将以只读方式挂载
[root@centos02 ~]# tar zxvf /mnt/jdk-7u65-linux-x64.gz -C /usr/src/
  <!--解压缩jdk软件包-->
[root@centos02 src]# ls
debug jdk1.7.0_65 kernels
[root@centos02 src]# mv jdk1.7.0_65/ /usr/src/java <!--安装JDK-->
[root@centos02 ~]# vim /etc/profile.d/java.sh<!--配置jdk运行环境变量-->
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin
[root@centos02 ~]# chmod +x /etc/profile.d/java.sh<!--变量添加执行权限-->
[root@centos02 ~]# source /etc/profile.d/java.sh <!--运行JDK-->

二、Tomcat的配置相关说明

1、Tomcat的主要目录

tomcat的主要目录为/usr/local/tomcat8/。

[root@centos02 ~]# cd /usr/local/tomcat/
[root@centos02 tomcat]# ll
总用量 96
drwxr-xr-x 2 root root 4096 11月 30 19:48 bin
drwxr-xr-x 3 root root 174 11月 30 20:03 conf
drwxr-xr-x 2 root root 4096 11月 30 19:48 lib
-rw-r--r-- 1 root root 56812 5月 20 2014 LICENSE
drwxr-xr-x 2 root root 197 11月 30 19:51 logs
-rw-r--r-- 1 root root 1192 5月 20 2014 NOTICE
-rw-r--r-- 1 root root 8974 5月 20 2014 RELEASE-NOTES
-rw-r--r-- 1 root root 16204 5月 20 2014 RUNNING.txt
drwxr-xr-x 2 root root 30 11月 30 19:48 temp
drwxr-xr-x 7 root root 81 5月 20 2014 webapps
drwxr-xr-x 3 root root 22 11月 30 19:51 work

主要目录说明如下:

|---bin/:存放Windows或Linux平台上启动和关闭Tomcat的脚本文件;
|---conf/:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml;
|---lib/:存放Tomcat运行需要的库文件;
|---logs/:存放Tomcat执行时的LOG文件;
|---webapps:Tomcat的主要web发布目录(包括应用程序示例);
|---work:存放JSP编译后产生的class文件;

2、配置文件说明

[root@centos02 tomcat]# ll conf/
总用量 200
drwxr-xr-x 3 root root 23 11月 30 19:51 Catalina
-rw------- 1 root root 12257 5月 20 2014 catalina.policy
-rw------- 1 root root 6294 5月 20 2014 catalina.properties
-rw------- 1 root root 1394 5月 20 2014 context.xml
-rw------- 1 root root 3288 5月 20 2014 logging.properties
-rw------- 1 root root 6610 11月 30 20:03 server.xml
-rw------- 1 root root 1530 5月 20 2014 tomcat-users.xml
-rw------- 1 root root 163385 5月 20 2014 web.xml

配置文件说明如下:

catalina.policy:权限控制配置文件;
catalina.properties:Tomcat属性配置文件;
context.xml:上下文配置文件;
logging.properties:日志log相关配置文件;
server.xml:主配置文件;
tomcat-users.xml:manager-gui管理用户配置文件(Tomcatt安装后提供一个manager-gui的管理界面,通过配置该文件可以开启访问);
web.xml:Tomcat的servlet、servlet-mapping、filter、MIME等相关配置;

3、Tomcat主配置文件说明

server.xml为Tomcat的主要配置文件,通过配置该文件,可以修改Tomcat的启动端口、网站目录、虚拟主机、开启https等重要功能。

整个server.xml由以下结构构成:<Server>、<Service>、<Connector /><Engine >、<Host>、<Context>、</Context></Host></Engine></Service>和</Server>。

以下是默认安装server.xml文件的部分内容,其中<!-- -->内的内容时注释信息。//号开头是我自行进行的批注:

[root@Centos01 tomcat8]# vim conf/server.xml
<?xml version="1.0" encoding="UTF-8"?>
............     //省略部分内容
<Server port="8005" shutdown="SHUTDOWN">
//Tomcat关闭端口,默认只对本机地址开放,可以在本机通过Telnet 127.0.0.1 8005访问,
//对Tomcat进行关闭操作
............    //此处省略部分内容
 <Connector port="8080" protocol="HTTP/1.1"
  connectionTimeout="20000"
  redirectPort="8443" />
//Tomcat启动的默认端口号8080,可以根据需要进行更改。
............    //此处省略部分内容
 <!-- Define an AJP 1.3 Connector on port 8009 -->
 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
//Tomcat启动AJP 1.3连接器时默认的端口号,可以根据需要进行更改
............     //此处省略部分内容
//以下为Tomcat定义虚拟主机时的配置及日志配置
<Host name="localhost" appBase="webapps"
  unpackWARs="true" autoDeploy="true">

 <!-- SingleSignOn valve, share authentication between web applications
  Documentation at: /docs/config/valve.html -->
 <!--
 <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
 -->

 <!-- Access log processes all example.
  Documentation at: /docs/config/valve.html
  Note: The pattern used is equivalent to using pattern="common" -->
 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  prefix="localhost_access_log" suffix=".txt"
  pattern="%h %l %u %t "%r" %s %b" />

 </Host>
 </Engine>
 </Service>
</Server>

4、Tomcat server的组成部分说明

1)Server

server元素代表了整个CatAlina的servlet容器。

2)Service

Service是这样一个集合:它由一个或者多个Connector,以及一个Engine(负责处理所有Connector所获得的客户请求)组成。

3)Connector

一个Connector在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理,从Engine处获得回应并返回客户。

Tomcat有两个典型的Connector,一个直接侦听来自browser的http请求,一个侦听来自其他webserver的请求。

Coyote HTTP/1.1 Connector在端口8080处侦听来自客户browser(浏览)的http请求。

Coyote JK2 Connector 在端口8009处侦听来自其他文本server(Apache)的servlet/jsp代理请求。

4)Engine

Engine下可以配置多个虚拟主机virtual host,每个虚拟主机都有一个域名。
当Engine获得一个请求时,它把该请求匹配到某个Host上,然后把该请求交给该host来处理。
Engine有一个默认虚拟主机,当请求无法匹配到任何一个host上时,将交给该默认主机处理。

5)Host

Host代表一个virtual Host,即虚拟主机,每个虚拟主机和某个网络域名Domain Name相匹配。
每个虚拟主机下都可以部署一个或多个web app,每个web app对应一个Context,有一个Context path。

当host获得一个请求时,将把该请求匹配到某个Context上,然后把该请求交给该Context来处理,匹配的方法是“最长匹配”,所以一个path==""的Context将成为该Host的默认Context。
所有无法和其他Context的路径名匹配的请求都将最终和该默认Context匹配。

6)Context

一个Context对应一个web application ,一个web application由一个或者多个servlet组成。

总结

以上所述是小编给大家介绍的Centos 7系统的Tomcat服务器,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

(0)

相关推荐

  • CentOS7修改服务器系统时间的方法

    未知何故,服务器上的系统时间不对,比实际的UTC快了将近63分钟.在涉及本地文件与远程服务器文件的时间戳校验时,容易产生混淆. 这里把系统时间更正的过程记录如下. 参考资料:http://www.centoscn.com/CentOS/config/2015/0723/5901.html 在CentOS 7里面有一个命令timedatectl可以帮助我们修改服务器的时区. 1. 查看服务器里的时间设置 timedatectl ,它等同于 timedatectl status : $ timeda

  • CentOS7按时间段截取指定的Tomcat日志到指定文件的方法

    CentOS7之按时间段截取指定的Tomcat日志到指定文件的方法,很多朋友对此都不是很清楚,下面由脚步之家小编给大家讲解下. 复制代码 代码如下: sed -n '/2016-11-02 15:00:/,/2016-11-02 15:05:/p' catalina.out > /tmp/123/error.txt 将 catalina.out 文件的中的日志信息,按 2016-11-02 15:00 到 2016-11-02 15:05 时间段截取,然后放到 /tmp/123/ 目录下的 er

  • 详解CentOS7.0安装与配置Tomcat-7

    安装说明 安装环境:CentOS-7.0.1406 安装方式:源码安装 软件:apache-tomcat-7.0.29.tar.gz 下载地址:http://tomcat.apache.org/download-70.cgi 安装前提 系统必须已安装配置JDK6+,安装请参考:在CentOS-6.3中安装与配置JDK-7. 安装tomcat 将apache-tomcat-7.0.29.tar.gz文件上传到/usr/local中执行以下操作: 代码如下: [root@admin local]#

  • Linux centos7环境下tomcat安装教程

    Linux centos7环境下安装tomcat的步骤详解 1. 首先到Apache官网下载tomcat安装包 http://tomcat.apache.org/download-80.cgi 如果你们的jdk版本是1.7或者1.7以下的就下载tomcat6或是tomcat7就OK了 博主我的jdk版本是1.8, 所以下载的是tomcat8 2. 把刚下载好的tomcat上传到Linux虚拟机下 3.去到tomcat所在的目录下解压此压缩包如下 输入命令: cd/software (进到 /so

  • 详解基于Centos7+Nginx+Tomcat8的负载均衡服务器的搭建

    由于工作的需求,在使用中,需要搭建负载均衡,研究了Apache+Tomat负载均衡的方案,并且通过检索相关的文章,进行了比较发现,Apache负载负载均衡在使用的效率上,远远不如Nginx的效率高,因此决定使用Nginx来进行服务的搭建.最初YUM安装了Nginx,但是不知道什么原因,Nginx的服务可以正常启动,静态页面也可以正常访问,但是就是无法正常的搭建虚拟主机和负载均衡.对引没有深究原因,决定把他卸载,然后手动安装. 手动安装好Nginx后,一切正常,虚拟主机,负载均衡的配置全部没有任何

  • 深入浅析Centos 7系统的Tomcat服务器

    一.tomcat的由来 名称由来:tomcat最初是由Sun的软件架构师詹姆斯 邓肯 戴维森开发的.后来他帮助将其变为开源项目,并由Sun贡献给Apache软件基金会.由于大部分开源项目O'Reilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名.因为他希望这种动物能够自己照顾自己,最终,他将其命名为tomcat(公猫). 1.Tomcat应用场景 Tomcat服务器是一个免费的开源web应用服务器,属于轻量级应用服务器,在中小型系统和并发用户不是

  • CentOS 7系统下安装ftp服务器的全过程

    在安装配置过程中走过很多弯路,现在就简单点总结.方便大家学习参考.安装步骤如下: 1.安装ftp,相信这步很简单 # yum -y install ftp vsftpd 查看安装情况 #rpm -qc vsftpd /etc/logrotate.d/vsftpd /etc/pam.d/vsftpd /etc/vsftpd/ftpusers /etc/vsftpd/user_list /etc/vsftpd/vsftpd.conf 2.服务器配置 创建ftp根目录 /ftp/private(这里有

  • 阿里云服务器linux系统搭建Tomcat部署Web项目

    整个过程我给它分成四个步骤: 下载并安装jdk 下载并安装Tomcat 配置阿里云服务器信息 部署web项目 使用的工具:Xshell.WinSCP. 没有安装jdk的小伙伴点击上方超链接跳转到安装jdk博客 下载并安装Tomcat 到这个网页下查看最新的镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat 使用工具Xshell操作Linux系统 移动到home目录下载tomcat 下载 wget https://mirrors.tuna.t

  • Centos 7系统虚拟机桥接模式详解

    前言 本文主要给大家介绍了关于Centos 7系统虚拟机桥接模式的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 主机ping不通虚拟机centos7系统的ip大多有以下原因: 1.主机与centos7ip段对应 (关键是网关.dns服务器要一一对应,具体操作见后文) 2.对应后仍然不通的,可关闭主机与cenos7防火墙,centos7默认防火墙为firewall,这与centos6有不同 相关命令: systemctl stop firewalld.service

  • 免安装的Tomcat服务器的基本配置和安装

    假期的时候偶尔安装了一下,安装版和免安装版的都试过了,觉得免安装版的比较好一点,涉及到的配置比较多,文件也多,根据我现在掌握的知识,简单的做了一下免安装版的tomcat的基本配置和安装方法. 一.配置JDK 要想在自己的计算机上安装Tomcat,需要JDK的支持,因为Tomcat是用java语言编写的一个很轻量级的Web服务器. Java SE的最新版下载地址:http://www.jb51.net/softs/75615.html 1.首先将自己下载的jdk(这里使用的是1.7)下载后,解压或

  • 详解将Web项目War包部署到Tomcat服务器基本步骤

    1. 常识: 1.1 War包 War包一般是在进行Web开发时,通常是一个网站Project下的所有源码的集合,里面包含前台HTML/CSS/JS的代码,也包含Java的代码. 当开发人员在自己的开发机器上调试所有代码并通过后,为了交给测试人员测试和未来进行产品发布,都需要将开发人员的源码打包成War进行发布. War包可以放在Tomcat下的webapps或者word目录下,随着tomcat服务器的启动,它可以自动被解压. 1.2 Tomcat服务器 Tomcat服务器是一个免费的开放源代码

  • CentOS 7 搭建ntp时钟服务器的步骤详解

    前言  NTP 网络时间协议用来同步网络上不同主机的系统时间.你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间.而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步.由 NTP 管理的所有系统时钟都会同步精确到毫秒级. 在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器.在这篇文章中,我们会介绍在CentOS 7 搭建ntp时钟服

  • Linux server配置安装Java与Tomcat服务器教程详解

    系统:Ubuntu 16.04 dev_desktop 1.Java安装并配置环境变量 (1)从Java官方网站下载最新版JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载jdk压缩包 jdk-8u144-linux-x64.tar.gz (2)  将压缩包解压并复制到/usr/lib 目录下 tar -zxvf jdk-8u144-linux-x64.tar.gz sudo cp -r ./jdk

  • Debian下搭建Nginx和Tomcat服务器实现负载均衡的方案

    负载均衡的基本概念 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群).网络连接.CPU.磁盘驱动器或其他资源中分配负载,以达到最佳化资源使用.最大化吞吐率.最小化响应时间.同时避免过载的目的. 使用带有负载平衡的多个服务器组件,取代单一的组件,可以通过冗余提高可靠性.负载平衡服务通常是由专用软体和硬件来完成. 负载平衡最重要的一个应用是利用多台服务器提供单一服务,这种方案有时也称之为服务器农场.通常,负载平衡主要应用于Web网站,大型的Internet

  • centos 7中设置tomcat 7为系统服务的方法详解

    本文主要给大家介绍了关于在centos 7中设置tomcat 7为系统服务的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 1.准备工作: JKD:jdk-7u72-Linux-x64.gz Tomcat:apache-tomcat-7.0.70.tar.gz OS:CentOS linux release 7.2.1511 (Core) 2.安装jdk A,解压jdk在 /usr/ 目录下 B, root用户配置全局环境变量, vi /etc/profile 追加以下内容 exp

随机推荐