一、 软件安装

  1. 安装Apache  配置yum源,安装软件
yum install zlib zlib-devel
yum install httpd
  1. 安装Tomcat   在官方网站http://tomcat.apache.org/ 下载tomcat的二进制文件。这次使用的tomcat版本是7.0.92,下载后的压缩包文件名为apache-tomcat-7.0.92.tar.gz,把此安装包传到服务器,解压到/usr/local目录下,即可完成tomcat的安装。
  2. 安装JDK   在tomcat的运行环境下,JDK是必不可少的,tomcat只是一个Servlet/JSP容器,需要JDK提供底层的操作。   下载JDK软件,此次下载的版本是JDK1.8,安装包名为jdk-8u191-linux-x64.gz,将安装包传到服务器并解压到/usr/local目录下。 通过命令可以查看JDK版本:
[root@test ~]#  /usr/local/jdk1.8.0_191/bin/java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
  1. 安装JK模块   下载JK源码包,此次下载的版本是1.2.46,源码包文件名为tomcat-connectors-1.2.46-src.tar.gz,将此安装包解压后也放到/usr/local目录下。   安装步骤如下:
[root@test native]# yum install libtool autoconf           #yum安装所需要的依赖库文件
[root@test native]# ./buildconf.sh
[root@test native]# ./configure 
[root@test native]# make
[root@test native]# make install

  此时默认会在apache安装目录下的modules目录下生成一个mod_jk.so文件。如果没有,需要手动拷贝。   二、 Apache与Tomcat配置

  1. Apache的配置 Apache主要配置文件为http.conf,此时编辑此文件
[root@test www]# vim /etc/httpd/conf/httpd.conf

主要配置如下:

ServerRoot "/etc/httpd"           #用于指定守护进程httpd的运行目录
Timeout   300                 #定义客户端与服务端程序连接的超时间隔
Listen 80                      #监听端口
LoadModule jk_module modules/mod_jk.so   #加载jk模块
User apache
Group apache                   #设定httpd的用户和组
DocumentRoot "/var/www/html"    #指定网页的存放路径,默认到此路径寻找网页
ServerAdmin root@localhost       #当Apache出现问题时,会发信到这个邮箱
ErrorLog "logs/error_log"          #指定错误日志存放的位置
JkWorkersFile /etc/httpd/conf/workers.properties
JkMountFile /etc/httpd/conf/uriworkermap.properties
JkLogFile  /etc/httpd/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

##针对JK连接器属性的设置。其中1~2行指定Tomcat workers配置文件以及对网页的过滤规则,第3行指定JK模块的日志输出文件,第4行指定日志的输出级别,最后一行指定日志的输出格式。  

NameVirtualHost *:80      

#表示开启虚拟主机。如果开启虚拟主机,上面设置的DocumentRoot指令配置失效,以虚拟主机中的DocumentRoot为主。

<VirtualHost *:80>
   ServerAdmin webdata@123.net
   DocumentRoot /webdata/www
   ServerName test
   ErrorLog logs/error_log
   CustomLog logs/access_log common
   JkMountFile conf/uriworkermap.properties

 <Directory "/webdata/www">
  Options -Indexes +FollowSymlinks
  AllowOverride All
  Require all granted
 </Directory>
</VirtualHost>

#上面这段信息添加一个虚拟主机,其中不同的虚拟主机通过不同的ServerName来区分。每个虚拟主机用<VirtualHost>标签设置。 #ServerAdmin:表示虚拟主机的管理员邮箱地址 #DocumentRoot:表示虚拟主机站点文件路径 #ServerName:虚拟主机的站点域名 #ErrorLog:指定虚拟主机站点错误日志输出文件 #CustomLog:指定虚拟主机站点访问日志输出文件 #JkMountFile:指定对此虚拟主机的URL映射文件   2. Tomacat的配置 server.xml是Tomcat的主要配置文件。为了支持与Apache的整合,在Tomcat中也需要配置虚拟主机。在server.xml配置文件中找到默认的<Host>标签,在此标签结尾,添加如下内容:

<Host name="hcd" debug="0" appBase="/webdata/www" unpackWARs="true">
	<Context path="" docBase="" debug="1"/>

#name:指定虚拟主机名字 #debug:指定日志输出级别 #appBase:存放Web应用程序的基本目录 #unpackWARs:Tomcat是否会将WAR文件解压,true表示解压运行里面的应用程序;false表示不解压直接运行。   3. 配置Tomcat启动脚本  tomcat在启动的时候会去查找JDK的安装位置,因此需要配置系统环境变量。 在catalina.sh脚本中添加如下内容:

JAVA_HOME=/usr/local/jdk1.8.0_191
export JAVA_HOME

并在环境变量文件中添加如下内容:

export JAVA_HOME=/usr/local/jdk1.8.0_191
  1. 创建Tomcat worker 定义Tomcat worker的方法是在apache的conf目录下编写一个名为workers.properties的属性文件,使其作为Apache的插件来发挥作用。编写内容如下:
worker.list=tomcat1                #定义名字
worker.tomcat1.port=8009          # 主机监控的端口
worker.tomcat1.host=localhost       #监听AJP13请求的Tomcat  worker主机地址
worker.tomcat1.type=ajp13         #定义work类型的格式
worker.tomcat1.lbfactor=1    #当tomcat用作负载均衡是,使用此属性,表示负载均衡权值
  1. URL过滤规则文件uriworkermap.properties 用来指定哪些URL由Tomcat来处理,下面是映射文件的内容:
/*=tomcat1
!/*.jpg=tomcat1
!/*.gif=tomcat1
!/*.png=tomcat1
!/*.bmp=tomcat1
!/*.html=tomcat1
!/*.htm=tomcat1
!/*.swf=tomcat1
!/*.css=tomcat1
!/*.js=tomcat1

/=tomcat1表示所有的请求都交给tomcat1处理, !/.png=tomcat1表示在根目录下,所有以“*.png”结尾的文件都不有JK处理,也就是让Apache处理,其它类似。   三. 测试 这里将/usr/local/tomcat-7.0.92/webapps/ROOT/目录下的所有文件和/usr/local/tomcat-7.0.92/webapps/docs目录拷贝到/webdata/www/目录下,然后启动Apache和tomcat服务:

[root@test conf]# /usr/local/tomcat-7.0.92/bin/startup.sh 
[root@test conf]# systemctl start httpd

启动完毕后,在浏览器输入服务器IP地址,如果能访问tomcat默认的JSP页面,表示tomcat解析成功。接着,在/webdata/www/目录下建立一个test.html的静态页面,内容如下:

<html>
	<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
	<title>Administrator</title>
</head>
<body>
apache and tomcat successful,
This is html pages!
</body>
</html>

通过访问网页,出现如下内容: apache and tomcat successful, This is html pages! 这表示静态网页也可以解析成功。