CentOS7 Tomcat 环境部署

时间:2021-06-09 13:27:00

java由jvm虚拟机和一些本地类库(与操作系统通信的底层库)和java类库组成。javase由jdk和一些基本api组成,而javaee则在javase基础上添加了一些企业常用的类库,其中两个著名api为applet和serverlet.由于java无法基于cgi协议与前端web服务器交互,所以开发了servlet类。而要基于servlet类开发web应用,则html语言必须写在java语言中,即servlet类无法完成对于http协议的解读,无法将只将程序中的java代码转换为html交给前端web服务器,于是出现了一个webcontainer类,即jsp,可以将java代码嵌入在html中,相当于分拣器,jsp可以依靠Jasper处理包含嵌入了java代码的整个html文件,将其转换为servlet代码即java代码,交给servlet编译运行。然后再交给前端web服务器。为了实现servlet类和jsp类,出现了很多商业web容器,如websphere,weblogic等,但此类容器实现了过多的企业类,过于笨重,于是出现了几乎只实现servlet类和jsp类的开源类,如tomcat.resign,jetty等。
- JRE=JVM+java se API
- JDK=JVM+java+API
- Javase就是JDK+基本API
- javaee就是JDK+扩展的API
   tomcat由jvm和servlet容器以及web容器组成,一个tomcat进程即表现为配置文件中的server,和一个jvm实例即表现为配置文件中的engine,engine即拥有servlet container实现的jvm,一个tomcat一般只有一个server一个service,service包含一个engine和一个connector一个engine内可以有多个host即虚拟主机,host内部又包含多个context,context即代表一个webapp。当接受到用户请求时server通过connector选择关联engine,而service具体定义了一个或多个connecter是怎么把server和engine关联起来的。

tomcat的安装必须首先安装JDK,因为tomcat本身为java语言所开发,因此必须运行在JVM中,而tomcat运行时需要编译java网页源代码,因此必须有java语言和java编译器的支持,即java的开发环境。

JDK的安装步骤

1.首先官网下载JDK最新版本

wget --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie;" http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.rpm

选项 --no-cookie 表示禁用cookie

选项 --header     表示在请求头部插入特定的部分

2. 安装jdk-8u92-linux-x64.rpm包

rpm -ivh jdk-8u92-linux-x64.rpm

执行安装后 默认安装会改名为jdk1.8.0_92 因此

rpm  -ql jdk1.8.0_92 可以查看此rpm包到底安装了哪些文件。默认安装在了/usr/java目录下

Tomcat安装

1.首先在官网选择下载最新版本tomcat,并且解压到指定目录

wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.0.36/bin/apache-tomcat-8.0.36.tar.gz

tar -zvxf apache-tomcat-8.0.36.tar.gz -C /usr/local/

2.查看tomcat环境变量

cd /usr/local

ln -sf apache-tomcat-8.0.36/  tomcat

tomcat/bin/catalina.sh --help

3. 为了操作方便编辑如下文件

vi /etc/profile.d/tomcat.sh

export CATALINA_HOME=/usr/local/tomcat
           export PATH=$CATALINA_HOME/bin:$PATH

4.tomcat的目录结构

/bin/                        tomcat服务控制脚本

/webapps/               应用程序存放的目录

/conf/server.xml      tomcat服务配置文件

<server>

<service>

<connector />

<engine>

<host>

</host>

<engine/>

</service>

</server>