当前位置:首页 >> 服务器

Apache结合Tomcat实现动静分离的方法

实验环境

  • Apache和Tomcat均安装在IP地址为192.168.153.136的主机上
  • 主机操作系统为centos7
  • 实验之前关闭防火墙 ,命令: systemctl stop firewalld
  • 关闭seliunx ,命令:setenforce 0
  • 实验效果为Apache处理html静态资源,Tomcat处理jsp动态资源

1. Apache安装和启动

1.1 安装

 yum -y install httpd

1.2 启动

systemctl start httpd

2. tomcat安装和启动

2.1 安装jdk

rpm -ivh jdk-8u131-linux-x64_.rpm 

2.2 验证jdk安装成功

[root@host-136 ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

2.3 解压Tomcat安装包并移动改名到 /opt 目录下

2.3.1 解压

tar xzf apache-tomcat-8.5.35.tar.gz

2.3.2 移动改名

mv apache-tomcat-8.5.35 /opt/tomcat

2.4 启动服务

/opt/tomcat/bin/startup.sh

3. 连接器tomcat-connectors源码安装

3.1 安装所需环境

yum -y install httpd-devel gcc gcc-c++

3.2 解压

tar zxf tomcat-connectors-1.2.48-src.tar.gz

3.3 检测环境并配置

cd tomcat-connectors-1.2.48-src/native
./configure --with-apxs=/usr/bin/apxs

3.3 编译并安装

make && make install

3.4 验证安装成功

[root@host-136 native]# ll /etc/httpd/modules/mod_jk.so
-rwxr-xr-x. 1 root root 1565864 Jan 6 09:32 /etc/httpd/modules/mod_jk.so

4. 创建测试页面

4.1 静态页面

vim /var/www/html/index.html

<h1>static_page_from_apache</h1>

4.2 动态页面

vim /opt/tomcat/webapps/ROOT/test.jsp

<h1>dynamic_page_from_tomcat</h1>

5. 配置jk模块,实现Apache整合tomcat

5.1 复制配置文件

cd tomcat-connectors-1.2.48-src/conf/
cp httpd-jk.conf /etc/httpd/conf.d/
cp workers.properties /etc/httpd/conf/

5.2 修改workers.properties配置文件

vim /etc/httpd/conf/workers.properties

5.2.1 修改端口为8009

注:Connector AJP Port端口用于监听AJP( Apache JServ Protocol )协议上的请求,通常用于整合Apache Server等其他HTTP服务器,默认为8009

Apache结合Tomcat实现动静分离的方法

5.2.2 将 86 87 88 89 96 这几行注释或者删除

Apache结合Tomcat实现动静分离的方法

5.3 修改 httpd-jk.conf 配置文件

vim /etc/httpd/conf.d/httpd-jk.conf

将第94行内容去掉注释修改如下

Apache结合Tomcat实现动静分离的方法

6. 重启Apache服务

systemctl restart httpd

7. 访问页面测试

7.1 浏览器输入 ip/index.html 测试静态页面

Apache结合Tomcat实现动静分离的方法

7.2 浏览器输入 ip/test.jsp 测试动态页面

Apache结合Tomcat实现动静分离的方法