Windows下使用apache的jk_mod连接WAMP和Tomcat

最近在网上看到很多关于使用jk_mod连接Apache和Tomcat的教程,因为本人主攻PHP,用的都是WAMP作为服务器,它内嵌了Apache、MySQL以及PHP。使用网上的很多的教程都是把Tomcat放在D:\Tomcat,Apache放在在D:\Apache,类似这样的位置,就是两个东西是分开的,这样的情况下,假设Tomcat中有一个名字叫home的目录,而Apache下没有,想要使用localhost(和localhost:8080区分)访问Tomcat的东西,那么我们得在Apache的httpd.ini中加上一句:

?
1
JkMount
/home/* ajp13

告诉Apache我访问home这个目录的时候使用ajp协议连接到Tomcat。如果我们有很多这样的文件,我们每次都要添加这句话是不是显得特别麻烦?所以我的想法是让Apache原本的localhost的目录和Tomcat的webapps目录放到一起,即把Tomcat中的basedoc的路径指向到Apache的网站根目录,这样就可以不用在httpd.ini中添加东西了。

下面说下步骤:

1.下载安装WAMP

下载地址为:http://www.wampserver.com/en/ 或者直接点击:http://sourceforge.net/projects/wampserver/files/WampServer%202/WampServer%202.2/wampserver2.2e/wampserver2.2e-php5.4.3-httpd2.2.22-mysql5.5.24-32b.exe/download 下载,本人安装的是32位的,大家如果没有特殊的需要建议安装32位的,这样后面很多东西不会混乱,下载完成就是傻瓜式的安装,启动之后只要WAMP的图标是绿色的就表示成功了,访问localhost基本上就可以看到本地的网站目录了,如果不行可以查下是不是80端口被占用了。

2.下载 安装Java JDK

这个东西的安装这里就不赘述了,自己谷歌去。涉及到环境变量等等。

3.下载并解压Tomcat

下载地址为:http://tomcat.apache.org/download-70.cgi 或者直接点击:http://apache.fayea.com/apache-mirror/tomcat/tomcat-7/v7.0.39/bin/apache-tomcat-7.0.39.zip 下载,解压之后,进入到Tomcat的目录,将里面的所有文件包括bin、conf、lib等等全部拷到WAMP的目录下,让这些文件和WAMP的www文件夹并列就行了。为了等下验证的方便,把Tomcat的带来的webapps这个目录下的examples等文件夹拷贝到www里面,然后把webapps删掉。

4.下载并配置jk_mod模块

下载地址为:http://mirror.bit.edu.cn/apache//tomcat/tomcat-connectors/jk/binaries/windows/ ,这里要注意的是你得先看看你的WAMP里的Apache是什么版本左击任务栏的WAMP图标,选中Apache->Version,看看哪个版本前面打了个勾,Apache的版本就是那个了。我这离的2.2.22,额,这么多二。我们刚刚下载的WAMP是32位的,所以在这个下载地址里也选择32位的

tomcat-connectors-1.2.37-windows-i386-httpd-2.2.x.zip 下载。下载完成解压之后,在目录里有一个jk_mod.so,把这个东西拷到WAMP下的 bin->apache->apache2.2.22->modules中。然后打开Apache的httpd.ini,在一大堆的LoadModule中,加入一句话:

?
1
LoadModule
jk_module modules/mod_jk.so

最好按照字母的顺序放置,jk_module写在isapi_module的下面:

这样方便以后在WAMP中选择开启关闭哪些Apache模块。

接下来到WAMP的conf文件夹(其实是Tomcat那里拷过来的)下,添加一个名为workers.properties的文件,在里面添加内容:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#让mod_jk模块知道Tomcat的位置
workers.tomcat_home="F:/tomcat"
 
#让mod_jk模块知道jre的位置
workers.java_home="C:/Program
Files (x86)/Java/jdk1.7.0_01"
 
#模块版本
worker.list=ajp13
 
#工作端口,若没占用则不用修改
worker.ajp13.port=8009
 
#本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.host=localhost
 
#类型
worker.ajp13.type=ajp13
 
#代理数,不用修改
worker.ajp13.lbfactor=1

然后打开这个目录下的server.xml,找到Host这个标签,把appBase改成WAMP的www目录,我这离使用的是相对路径:

?
1
<Host

name
="localhost"

appBase
="www"

unpackWARs
="true"

autoDeploy
="true">

接下来在httpd.ini的最后面加入下面这段:

?
1
2
3
4
5
JkWorkersFile
"F:/wamp/conf/workers.properties"
JkLogFile
"F:/wamp/bin/apache/apache2.2.22/logs/mod_jk.log"
JkLogLevel
warn 
JkMount
/*.jsp ajp13
JkMount
/*.do ajp13

上面的JkWorkersFile 就是刚刚那个workers.properties文件的路径,JkMount后面的ajp13跟workers.properties里写的worker.list=ajp13的ajp13要相同。

在httpd.ini中找到:

?
1
2
3
<IfModule

dir_module>
    DirectoryIndex
index.php index.php3 index.html index.htm
</IfModule>

在后面加上index.jsp,这样index.jsp就成了默认首页了。

5.打开服务器

接下来将WAMP重启,然后到WAMP目录的bin下面,双击startup.bat这个批处理程序,打开Tomcat,如果Tomcat没有正常打开很可能是第二步安装Java JDK的时候失败了。现在我假设你的安装正常,然后在浏览器中打开:http://localhost/examples/jsp/ ,如果看到正常的页面:

说明jk_mod连接WAMP和Tomcat的配置成功了!

Tonitech版权所有 | 转载请注明出处: http://www.tonitech.com/2005.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

wamp上能够访问jsp(未解决 游客勿看)的更多相关文章

  1. mongoose在Windows Server 2003上不能访问问题的解决

    这两天在部署EasyDarwin开源流媒体服务器到Windows Server 2003的时候,奇怪地发现,在Windows 2003上面,mongoose的web管理端口居然无法访问,但通过nets ...

  2. C#操作FTP报错,远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)的解决方法

    最近在做项目的时候需要操作ftp进行文件的上传下载,但在调用using (var response = (FtpWebResponse)FtpWebRequest.GetResponse())的时候总 ...

  3. oracle,wamp,FZ突然出现问题,求解决方案(未解决,最终系统还原)

    -----背景------- 系统:win7  64位oracle 11g(11.1)每天都用oracle.用toad for oracle .电脑固定IP.未更改任何配置信息.用了几个月,突然出现了 ...

  4. URLRedirector 解决网页上无法访问 google CDN 的问题(fonts、ajax、themes、apis等)

    URLRedirector 解决网页上无法访问 google CDN 的问题(fonts.ajax.themes.apis等) 由于某些原因,在访问国外的网站时有时候会特别慢,像 stackoverf ...

  5. linux上搭建ftp、vsftp, 解决访问ftp超时连接, 解决用户指定访问其根目录,解决ftp主动连接、被动连接的问题

    linux上搭建ftp 重要 解决如何搭建ftp         解决用户指定访问其根目录         解决访问ftp超时连接         解决ftp主动连接.被动连接的问题 1.安装ftp ...

  6. 解决用户绕过Servlet直接访问jsp页面

    解决用户绕过ActionServlet,直接访问jsp文件的问题 1.将所有jsp文件拷贝到WEB-INF目录下 因为WEB-INF目录中的内容不能直接访问,但能转发过来 项目结构图如下: 2.修改s ...

  7. OpenCV在ARM-linux上的移植过程遇到的问题3---共享库中嵌套库居然带路径【未解决】

    [Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题3-共享库中嵌套库居然带路径[未解决] 标签(空格分隔): [Linux开发] 移植opencv到tq2440 一.下载open ...

  8. jexus上部署nuget私服vs访问403错误解决方式

    因为vs去访问nuget项目的时候是以下面的方式去访问的 http://域名/nuget/Search()?$filter=IsLatestVersion&searchTerm=''& ...

  9. jetty访问jsp页面出现异常:org.apache.jasper.JasperException: PWC6345: A full JDK (not just JRE) is required解决

    今天在jetty下配置一个jsp模版的报表页面,报如下异常信息:   org.apache.jasper.JasperException: PWC6345: There is an error in ...

随机推荐

  1. mapreduce使用 left outer join 的几种方式

    需求 数据: [主表]:存放在log.txt中 -------------------------------------------------------- 手机号码 品牌类型 登录时间 在线时长 ...

  2. PTA基础编程题目集6-3简单求和 (函数题)

    6-3 简单求和 (10 分) 本题要求实现一个函数,求给定的N个整数的和. 函数接口定义: int Sum(int List[],int N) 其中给定整数存放在数组List[]中,正整数N是数组元 ...

  3. c语言实验报告(四) 从键盘输入字符串a和字符串b,并在a串中的最小元素(不含结束符)后面插入字符串b.

    a串中最小元素后的字符被舍弃了. #include<stdio.h>#include<string.h>void main(){  int i,min=0;  char a[2 ...

  4. 利用“海底捞算法”在MongoDB中优雅地存储一棵树

    目前常见的树形结构数据库存储方案有以下四种,但是在处理无限深度.海量数据的树结构时,都存在一些问题: 1)Adjacency List(邻接表):每个节点仅记录父节点主键.优点是简单,缺点是访问子树需 ...

  5. Matlab调用C语言函数

    Matlab调用C语言函数 如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数:double add(double x, double y) { return x + y ;}现在我想要在 ...

  6. Spring Cloud学习入门路线方案

    Spring Cloud 为开发者提供了在分布式系统(如配置管理.服务发现.断路器.智能路由.微代理.控制总线.一次性Token.全局锁.决策竞选.分布式会话和集群状态)操作的开发工具.本Spring ...

  7. 20155213 实验一《Java开发环境的熟悉》实验报告

    20155213 实验一<Java开发环境的熟悉>实验报告 一. 实验内容及步骤 (一)使用JDK编译.运行简单的java程序 命令行下的程序开发 输入cd Code进入Code文件夹里 ...

  8. 2016-2017-2 20155338 实验二《Java面向对象程序设计》实验报告

    2016-2017-2 20155338 实验二<Java面向对象程序设计>实验报告 实验内容: 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握 ...

  9. 《图说VR入门》——googleVR 他山之玉

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/53125482 作者:car ...

  10. python 内置模块(sys)

    sys.argv           命令行参数List,第一个元素是程序本身路径sys.exit(n)        退出程序,正常退出时exit(0)sys.version        获取Py ...