一、 Tomcat介绍
二、 安装jdk
三、 安装Tomcat
四、 配置Tomcat监听80端口
五、 配置Tomcat虚拟主机
六、 Tomcat日志
七、扩展
一、 Tomcat介绍
Tomcat 是什么
Tomcat 是由 Apache软件基金会开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。
由于 Tomcat 本身也内含了一个 HTTP 服务器,它也可以被视作一个单独的 Web 服务器。但是,不能将 Tomcat 和 Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP web server 不是捆绑在一起的。Tomcat 包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。
tomcat是一个中间件,真正起作用解析java脚本的是jdk。jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。
最主流的jdk为sun公司发布的jdk,除此之外,其实IBM公司也有发布JDK,CentOS上也可以用yum安装openjdk
java程序写的网站用tomcat+jdk来运行
二、 安装jdk
jdk版本1.6,1.7,1.8,简称6/7/8.
1. 从Orcale官网下载jdk到windows下,然后再使用 rz 或者FPT等工具上传到Linux服务器上(下载版本8)
官网下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2. 解压jdk包
[root@Linux01 src]# tar zxvf jdk-8u191-linux-x64.tar.gz
3. 移动jdk包到/usr/local/下,改名为jdk1.8
[root@Linux01 src]# mv jdk1.8.0_191 /usr/local/jdk1.8
4. 配置JDK环境变量
[root@Linux01 src]# vim /etc/profile //编辑 /etc/profile 文件,在最后加入
JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=$JAVA_HOME/bin
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/jre/lib/charsets.jar
[root@Linux01 src]# source /etc/profile //使配置生效
5. 测试jdk环境是否生效
[root@Linux01 src]# java -version //使用java -version命令查看jdk版本,验证jdk是否安装成功
三、 安装Tomcat
1.下载tomcat(二进制包)
[root@Linux01 src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz
2. 解压包、移动到/usr/local目录下并重命名
[root@Linux01 src]# tar zxvf apache-tomcat-9.0.14.tar.gz
[root@Linux01 src]# mv ./apache-tomcat-9.0.14 /usr/local/tomcat
3. 启动tomcat
[root@Linux01 src]# /usr/local/tomcat/bin/startup.sh
注:执行startup.sh即可启动Tomcat服务 ;执行shutdown.sh 就能关闭Tomcat服务。 注意,tomcat没有restart参数,重启Tomcat只能先关闭再启动这样操作。
关于 /usr/local/tomcat/bin 目录下的sh脚本:
tomcat的脚本在bin目录下,有:catalina、startup、shutdown、setenv、digest、version等。
其中catalina脚本用于启动和关闭tomcat服务器,是tomcat中最关键的脚本。
startup脚本和shutdown脚本等都是使用了不同的参数调用了catalina脚本:
最常用的两个:
startup脚本以start参数调用了catalina脚本,用于启动Tomcat
shutdown脚本以stop参数调用了catalina脚本。用户关闭Tomcat
[root@Linux01 src]# ll /usr/local/tomcat/bin/*.sh
4. 查看进程和监听端口
[root@Linux01 src]# ps aux|grep tomcat
或[root@Linux01 src]# ps aux|grep java
[root@Linux01 src]# netstat -lntp |grep java
三个端口:8080为提供web服务的端口;8005为管理端口;8009端口为第三方服务调用的端口,比如httpd和Tomcat结合时会用到 。只有当三个端口全部处于监听状态时,才能正常的请求访问tomcat服务器 。三个端口都可以自定义。
5. 测试访问
测试访问前需要在防火墙将三个端口放行,或者关闭防火墙.
[root@Linux01 src]# systemctl stop firewalld //为了方便,直接关闭防火墙
[root@Linux01 src]# systemctl status firewalld //查看防火墙状态
①curl测试访问
②远程测试
测试成功,就表示Tomcat的初步安装以及完成了 。
四、 配置Tomcat监听80端口
Tomcat默认侦听的是8080端口,不是很方便。可以通过修改配置文件的方式将默认侦听的端口改为80。
配置方式
1. 先查看80端口是否被占用
[root@Linux01 src]# netstat -lntp | grep 80
这里显示80端口被nginx占用了 ,所以需要先关闭nginx
[root@Linux01 src]# /usr/local/nginx/sbin/nginx -s stop
正常了,80端口空出来了:
2. 修改Tomcat配置文件:Tomcat主配置文件路径是 /usr/local/tomcat/conf/server.xml
[root@Linux01 src]# vim /usr/local/tomcat/conf/server.xml
修改如下字段 Connector port="8080"---->Connector port="80"
3. 重启Tomcat
[root@Linux01 src]# /usr/local/tomcat/bin/shutdown.sh
[root@Linux01 src]# /usr/local/tomcat/bin/startup.sh
4. 测试访问
①本地测试
②浏览器测试访问,注意地址栏没有加端口号,默认就是访问80端口
五、 配置Tomcat虚拟主机
增加虚拟主机,以www.123.cn为例。
1. 编辑Tomcat主配置文件/usr/local/tomcat/conf/server.xml
[root@Linux01 src]# vim /usr/local/tomcat/conf/server.xml
在</Host>下面增加如下内容:
<Host name="www.123.cn" appBase=""
unpackWARs= "true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/>
</Host>
Tomcat主配置文件/usr/local/tomcat/conf/server.xml中:
# <Host>和</Host>之间的配置为虚拟主机配置部分,
# name定义域名,
# appBase定义应用的目录,默认位置在/usr/local/tomcat/webapps
# Java的应用通常是一个war的压缩包,只需要将war的压缩包放到appBase目录下面即可。
# unpackWARs="true" 表示会自动解压war包,改为false就不会自动解压了
# autoDeploy="true" 表示会自动部署,
# docBase= 就是定义网站的根目录,相当于httpd的 DocumentRoot
2. 重启tomcat
[root@Linux01 src]# /usr/local/tomcat/bin/shutdown.sh
[root@Linux01 src]# /usr/local/tomcat/bin/startup.sh
3. 创建配置里定义的docBase目录和测试文件
[root@Linux01 src]# mkdir -p /data/wwwroot/www.123.cn
[root@Linux01 www.123.cn]# vim 1.html
4. 测试
①本地测试