XP系统下用mod_jk 1.2.40整合apache2.2.16和tomcat 6.0.29,让apache可以同时访问php和jsp页面

首先我们要去tomcat的官网下载mod_jk.so模块。

总的文件夹网址:Index of /dist/tomcat/tomcat-connectors/jk/binaries/windows

适用于32位的apache2.2:https://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/tomcat-connectors-1.2.40-windows-i386-httpd-2.2.x.zip

适用于64位的apache2.4:https://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x.zip

适用于windows系统的apache服务器的mod_jk.so模块的下载地址_JSP吧_Purasbarhttps://zh.purasbar.com/post.php?t=29522笔者用的系统是32位的XP系统,apache版本是2.2,所以在文件夹里面下载tomcat-connectors-1.2.40-windows-i386-httpd-2.2.x.zip这个压缩包,里面就有mod_jk.so文件。

将mod_jk.so解压到apache的C:\Program Files\Apache Software Foundation\Apache2.2\modules文件夹下。

用网页设计软件(如Dreamweaver CS3)或文本编辑器在tomcat的C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\ROOT文件夹下建立一个test.jsp页面。

html 复制代码
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.util.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>系统时区列表</title>
</head>

<body>
<%
String[] list = TimeZone.getAvailableIDs();
Arrays.sort(list);
for (String name : list) {
	out.println(name + "<br>");
}
%>
</body>
</html>

页面放好后,可在tomcat中访问,apache目前还无法访问。

在C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf里面添加:

LoadModule jk_module modules/mod_jk.so

JkWorkersFile conf/workers.properties

JkLogFile logs/mod_jk.log

JkLogLevel debug

JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories

JkRequestLogFormat "%w %V %T"

JkMount /*.jsp worker1

创建C:\Program Files\Apache Software Foundation\Apache2.2\conf\workers.properties文件,内容如下:

worker.list=worker1

worker.worker1.port=8009

worker.worker1.host=localhost

worker.worker1.type=ajp13

在C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\server.xml里面去掉8009端口Connector节点的注释:

<!-- Define an AJP 1.3 Connector on port 8009 -->

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

重启apache和tomcat服务器,重启apache服务器后可在窗口下方看到多了一个mod_jk/1.2.40。

现在就可以通过apache直接访问jsp页面了,同时php页面也能正常访问。


要想访问文件夹时能自动识别index.jsp,往apache配置文件的DirectoryIndex里面添加index.jsp是无效的。DirectoryIndex应该只保留index.html和index.php。

DirectoryIndex: sets the file that Apache will serve if a directory

is requested.

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

假设:

C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\haha里面有test.php页面。

C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\ROOT\haha里面有index.jsp页面。

那应该再往apache的httpd.conf里面增加下面两条指令。

JkMount /haha worker1

JkMount /haha/ worker1

这样重启apache服务器后,访问/haha/就能识别/haha/index.jsp(但/haha/index.php就无法识别了),同时/haha/test.php也能正常访问。


现在http://localhost/test.jsp可以访问了,但https网址https://localhost/test.jsp还无法访问。

需要修改C:\Program Files\Apache Software Foundation\Apache2.2\conf\extra\httpd-ssl.conf配置文件,在<VirtualHost>里面也要加入JkMount /*.jsp worker1。

重启apache服务器后,https也能访问jsp页面了。

提示:只有Windows XP SP3及以上的IE6浏览器才支持sha256RSA签名的https证书。
要想让XP SP2的IE6浏览器和Win2000 SP4的IE5和IE6浏览器成功访问https,https证书必须用sha1RSA签名(如自签名的sha1RSA证书)。

Win2000 SP4系统最高只能装IE6浏览器的SP1版本,这个版本不支持sha256的https证书。

如果apache配置sha256的https证书,那么IE5和IE6都无法显示网页。

XP SP3系统里面的IE6是SP3版本,这个版本才支持sha256的https证书。Win2000是装不了IE6的SP3版本的,最高只能装IE6 SP1。

相关推荐
paopaokaka_luck4 分钟前
基于Spring Boot+Vue的多媒体素材管理系统的设计与实现
java·数据库·vue.js·spring boot·后端·算法
guoruijun_2012_411 分钟前
fastadmin多个表crud连表操作步骤
android·java·开发语言
Hello-Brand21 分钟前
Java核心知识体系10-线程管理
java·高并发·多线程·并发·多线程模型·线程管理
乐悠小码27 分钟前
数据结构------队列(Java语言描述)
java·开发语言·数据结构·链表·队列
史努比.29 分钟前
Pod控制器
java·开发语言
2的n次方_32 分钟前
二维费用背包问题
java·算法·动态规划
皮皮林55132 分钟前
警惕!List.of() vs Arrays.asList():这些隐藏差异可能让你的代码崩溃!
java
莳光.32 分钟前
122、java的LambdaQueryWapper的条件拼接实现数据sql中and (column1 =1 or column1 is null)
java·mybatis
程序猿麦小七37 分钟前
基于springboot的景区网页设计与实现
java·spring boot·后端·旅游·景区
weisian15144 分钟前
认证鉴权框架SpringSecurity-2--重点组件和过滤器链篇
java·安全