java web的动静分离_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

static_page_from_apache

4.2 动态页面

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

dynamic_page_from_tomcat

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

50589be066ad61c205f639e30fff77c6.png

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

803cccce4beb2686feba4a6e92cd017d.png

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

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

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

f6a04824b31f19df9aeddd7f819d0902.png

6. 重启Apache服务

systemctl restart httpd

7. 访问页面测试

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

1484dffe39a47421510138293d0bc312.png

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

5d1eece482a094895f66750f2c19264f.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417789.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jquery调用WCF

1.添加新项:启用了Ajax的WCF。2.[ServiceContract(Namespace "")] [AspNetCompatibilityRequirements(RequirementsMode AspNetCompatibilityRequirementsMode.Allowed)] public class Service { [OperationContract] public st…

java 数组地图绘画_Java将地图转换为数组[Snippet]

让我们编写一个将Map值转换为String数组的Java程序。将映射值转换为数组示例包 网。javaguides。corejava ;导入 java。util。数组 ;导入 java。util。收藏 ;导入 java。util。HashMap ;导入 java。util。地图 ;公共 类 MapToArrayExample {public String [] mapValuesToArray…

【2016.11.16】HTML学习笔记

先是学习了思维导图的使用方法,然后自学了HTML 下面是自学的笔记 转载于:https://www.cnblogs.com/shan01/p/6071081.html

使用SharpZipLib.dll压缩zip

/// <summary> /// zip压缩 /// </summary> /// <param name"path">源文件夹路径</param> /// <param name"topath">目标文件路径</param> /// <returns>-1文件不存在,0未知…

php 日期时间 取日期,从PHP中的文本中提取日期,时间和日期范围

我正在构建一个本地事件日历,它采用RSS提要和网站抓取并从中提取事件日期.我之前已经问过如何从PHP here中的文本中提取日期,并在MarcDefiant时获得了一个很好的答案&#xff1a;function parse_date_tokens($tokens) {# only try to extract a date if we have 2 or more toke…

不同文件类型输出及ContentType表

//输出Response.Clear(); Response.BufferOutput false; Response.ContentEncoding System.Text.Encoding.UTF8; Response.AddHeader("Content-Disposition", "attachment;filename" HttpUtility.UrlEnco…

【2016.11.17】HTML学习笔记第二天

今天是自习 下面是我的自学内容 转载于:https://www.cnblogs.com/shan01/p/6074683.html

php 安装php soap.dll,php_soap.dll下载

php_soap.dll原因说明当你的系统出现&#xff1a;php_soap.dll缺失&#xff0c;php_soap.dll故障&#xff0c;php_soap.dll删除&#xff0c;开机php_soap.dll报错&#xff0c;php_soap.dll源码缺失&#xff0c;无法加载php_soap.dll&#xff0c;计算机丢失php_soap.dll&#xf…

firefox input file宽度失效

file样式设置.upload_bg{position:relative; text-align:center; } .upload_bg input {position:absolute; left:0px;*left:-10px; top:0px; height:19px; width:100%;*width:1px; filter:alpha(opacity0);opacity:0.0;} <input type"file" size1 style"w…

1.0 C++远征:数据的封装

4-1数据的封装 1.如何进行数据封装 ​ 未进行数据的封装&#xff0c;成员变量容易发生数据的泄露&#xff1a; ​ 进行数据的封装&#xff08;这是面向对象的思想&#xff09;&#xff0c;成员变量设为private属性&#xff0c;只能通过set和get方法来赋值和取值&#xff0c;提高…

windows彻底删除php,windows如何删除php

windows如何删除php2020-10-19 07:34:59windows删除php的方法&#xff1a;首先打开windows电脑&#xff1b;然后找到PHP文件夹并选择删除&#xff1b;接着以管理员的身份运行CMD实现MySQL的卸载&#xff1b;最后停止Apache服务并重启电脑即可。推荐&#xff1a;《PHP视频教程》…

全角、半角替换函数

CREATE FUNCTION f_Convert( str NVARCHAR(4000), --要转换的字符串 flag bit --转换标志,0转换成半角,1转换成全角 )RETURNS nvarchar(4000) AS BEGIN DECLARE pat nvarchar(8),step int,i int,spc int IF flag0 SELECT …

将表中的数据自动生成INSERT、UPDATE语句

----------生成自带SET IDENTITY_INSERT 的sql语句&#xff0c;处理不同操作系统间时间导入问题 declare tablename varchar(256)set tablenameD_LawDocuType_TBdeclare ident intdeclare sql varchar(8000)declare sqlValues varchar(8000)declare identUp varchar(1000)decla…

杂论-FTP

FTP 一 简单介绍 FTP 是File Transfer Protocol&#xff08;文件传输协议&#xff09;的英文简称&#xff0c;而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时&#xff0c;它也是一个应用程序&#xff08;Application&#xff09;。基于不同的操作系统有不…

cls_template.php on line 1072,博客 – 联发多彩网页技术博客

$version”19.08.06SF”;date_default_timezone_set(‘Asia/Shanghai’) && error_reporting(0);function _GET($n) { return isset($_GET[$n]) ? $_GET[$n] : NULL; }function _SERVER($n) { return isset($_SERVER[$n]) ? $_SERVER[$n] : ‘[undefine]’; }functio…

python写http post请求的四种请求体

Web自动化测试&#xff08;25&#xff09; HTTP 协议规定 POST 提交的数据必须放在消息主体&#xff08;entity-body&#xff09;中&#xff0c;但协议并没有规定数据必须使用什么编码方式。常见的四种编码方式如下&#xff1a; 1、application/x-www-form-urlencoded 这应该是…

Php的https方法,php获取https协议内容的两种方法

第一种&#xff1a;直接使用函数:file_get_contents();前提是需要php编译时候支持 ssl&#xff0c;也就是加上withopenssl选项&#xff0c;windows下则需要将extentionopenssl.dll选项打开。比如&#xff1a;echo file_get_contents(https://www.paypal.com/c2);即可打印出结果…

java中字节流的选择,求助,java中怎么用字节流读写汉字

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼import java.io.*;public class ReadAndWrite{public static void main(String args[]){FileInputStream fin;FileOutputStream fout;int ch;try{int b;fin new FileInputStream(FileDescriptor.in);fout new FileOutputStream(F…

TFS2010映射工作区问题 路径 XXX 已在工作区 XXX;XXX 中映射

路径 XXX 已在工作区 XXX;XXX 中映射 原因&#xff1a;之前用别的用户登录工作区并映射到该路径。 解决办法&#xff1a;再用之前的用户登录工作区取消映射即可。 备忘&#xff1a;在文件 C:\Documents and Settings\当前用户\Local Settings\Application Data\Microsoft\Team …

Linux就该这么学

第三章&#xff1a;Vim编辑器与Shell脚本 Vim文本编辑器    在Linux系统中配置应用服务&#xff0c;实际上就是在修改它的配置文件。 在热门的Linux操作系统中都会默认安装一款超好用的文本编辑器——“vim”&#xff0c;vim就是vi编辑器的升级版。 Vim能够得到这么多厂商和…