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. 常见的移动端H5页面开发遇到的坑和解决办法

    转过来,平时看看.虽然还有很多问题至今无解.比如:华为麒麟950的P8和meta打开我们的应用首页经常偶发白屏.!! 1.安卓浏览器看背景图片,有些设备会模糊. 用同等比例的图片在PC机上很清楚,但是 ...

  2. Msql浅析-基础命令(二)

    篇幅简介 一.Msql数据类型 1.整型 tinyint,  占 1字节 ,有符号: -128~127,无符号位 :0~255 smallint, 占 2字节 ,有符号: -32768~32767无符 ...

  3. java-spark的各种常用算子的写法

    通常写spark的程序用scala比较方便,毕竟spark的源码就是用scala写的.然而,目前java开发者特别多,尤其进行数据对接.上线服务的时候,这时候,就需要掌握一些spark在java中的使 ...

  4. SylixOS 系统初探

    国产嵌入式硬实时操作系统 SylixOS 初体验 关于 SylixOS 详细了解请见:http://wiki.sylixos.com/index.php/%E7%B3%BB%E7%BB%9F%E7%A ...

  5. HTTP請求

    HTTP[超文本傳輸協議]是因特網上應用最為廣泛的一種網絡傳輸協議,送油的WWW文件都必須遵守這個標準. HTTP是一個基於TCP/IP通信協議來產地數據(html文件,圖片文件,查詢結果等). HT ...

  6. python教程(三)·函数进阶(上)

    在介绍了函数定义的方法后,再来介绍一些进阶知识 参数收集 有时候我们需要参数的数量是任意的,比如print函数的参数的数量是任意的,print函数的内部实现我们不探究,但是单单是参数数量可变这一方面实 ...

  7. Leecode刷题之旅-C语言/python-326 3的幂

    /* * @lc app=leetcode.cn id=326 lang=c * * [326] 3的幂 * * https://leetcode-cn.com/problems/power-of-t ...

  8. ASP.NET Web Form 与 ASP.NET MVC 区别

    Asp.net 微软提供web开发框架或者技术.分Web Form和ASP.NET MVC.下面简单说明各自优缺点及使用场景. Web Form ASP.NET Webform提供了一个类似于winf ...

  9. C#基础之委托

    委托常常和事件在一起使用,可以理解委托是方法的容器,事件则是委托的另一种表现形式.委托和事件虽然写得还比较多,不过也只是用的熟练而已,趁周末没课好好巩固下基础,一点一点积累吧. 1.一个简单的小例子 ...

  10. 真香!iOS云真机全新上线!

    WeTest 导读 众多开发者已经渐渐适应通过调用线上的安卓真机进行远程调试,但是针对iOS设备,则依然存在“iOS设备昂贵”“无法及时采购iOS最新设备”“无法复现iOS历史系统版本”等问题. 为了 ...