Tomcat配置

  • Tomcat介绍
  • 安装jdk
  • 安装Tomcat
  • 配置Tomcat监听80端口
  • 配置Tomcat的虚拟主机
  • Tomcat日志

Tomcat介绍 Tomcat是Apache软件基金会(Apache software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 java程序写的网站用tomcat+jdk来运行 tomcat是一中间件,真正起作用的,解析脚本的是jdk jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。 最主流的jdk为sun公司发布的jdk,除此之外,其实IBM公司也有发布JDK,CentOS上也可以用yum安装openjdk

安装jdk

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

ctrl+alt+f打开xftp(双击就可下载到linux系统的/usr/local/src目录下)

cd /usr/local/src/
tar -zxvf jdk-8u161-linux-x64.gz
mv jdk1.8.0_161/ /usr/local/jdk1.8

vim /etc/profile  
JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar

source /etc/profile
java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

安装Tomcat

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.28/bin/apache-tomcat-8.5.28.tar.gz
tar -zxvf apache-tomcat-8.5.28.tar.gz
mv apache-tomcat-8.5.28 /usr/local/tomcat

启动tomcat

/usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

ps aux|grep java
root      43424  1.1  5.5 4056596 103120 pts/2  Sl   09:53   0:05 /usr/local/jdk1.8/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root      43527  0.0  0.0 112676   980 pts/2    S+   10:01   0:00 grep --color=auto java

/usr/local/tomcat/bin/shutdown.sh  //关闭tomcat
/usr/local/tomcat/bin/startup.sh
netstat -tlnp|grep java
tcp6       0      0 :::8080                 :::*                    LISTEN      43578/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      43578/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      43578/java

8080为提供web服务的端口
8005为管理端口
8009端口为第三方服务调用的端口,比如httpd和tomcat结合时会用到

关闭防火墙,在浏览器中访问192.168.221.20:8080

配置Tomcat监听80端口

vim /usr/local/tomcat/conf/server.xml  //将8080改为80
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
							 
/etc/init.d/nginx stop
/usr/local/tomcat/bin/shutdown.sh;/usr/local/tomcat/bin/startup.sh
netstat -tlnp|grep java  //以下是查看到的内容
tcp6       0      0 :::80                   :::*                    LISTEN      43897/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      43897/java          
tcp6       0      0 :::8009                 :::*                    LISTEN      43897/java

访问192.168.221.20

配置Tomcat的虚拟主机

vim /usr/local/tomcat/conf/server.xml  //添加一个虚拟主机,<Host></Host>就是一个虚拟主机
<Host name="www.apeng.com"  appBase=""
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
           <Context path="" docBase="/data/wwwroot/apeng" debug="0"
           reloadable="true" crossContext="true"/>
       </Host>

name  //定义域名
appBase //定义应用的目录,Java的应用通常是一个jar压缩包,
只要将jar的压缩包放到appBase目录下面即可。
Tomcat默认面为/usr/local/tomcat/webapps/ROOT/index.jsp

部署一个java的应用 下载zrlog

wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/

只要删除了war包,对应自动解压的目录也会消失。

mv zrlog-1.7.1-baaecb9-release zrlog

在浏览器中访问zrlog,进入到了zrlog的安装 创建数据库zrlog,创建数据库用户zrlog,从本机能够登入数据库,密码为“123”。

mysql -uroot -p -e "create database zrlog;grant all on zrlog.* to 'zrlog'@'127.0.0.1' identified by '123';"

点击查看进入主页 创建docBase目录/data/wwwroot/apeng,将zrlog下的文件移到docBase目录下

mkdir -p /data/wwwroot/apeng
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/apeng/
在windows中绑定hosts文件(192.168.221.20 www.apeng.com)
/usr/local/tomcat/bin/shutdown.sh;/usr/local/tomcat/bin/startup.sh

在浏览器中访问www.apeng.com

Tomcat日志

ls /usr/local/tomcat/logs
其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志
catalina.2017-xx-xx.log和catalina.out内容相同,前者会每天生成一个新的日志。
host-manager为管理相关的日志,host-manager为虚拟主机的管理日志。
localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
访问日志默认不会生成,需要在server.xml配置。

访问日志的配置

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />
							 
prefix定义访问日志的前缀,suffix定义日志的后缀,pattern定义日志格式。
新增加的虚拟主机默认并不会生成类似默认主机的那个localhost.日期.log日志,
错误日志会统一记录到catalina.out中。
关于Tomcat日志,最需要关注catalina.out,当出现问题时,应该第一想到去查看它。