最全最新最完整的Windows下Apache与Tomcat的整合

一直想把tomcat和apache进行整合,因为tomcat处理静态页面的效果不是很好,所以在网上找了很多资料,经过一翻整理和几天痛苦的挣扎,终于整合成功,现在特写下来和大家分享:

环境:

jdk1.5.0_update10,也可以用最新的jdk1.6,下载地址为:

http://java.com/en/download/index.jsp 这个地址是在线安装的,非常方便

,如果要下载安装文件,也有地址,如下:

http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u7-windows-i586-p.exe?BundledLineItemUUID=mSpIBe.pb00AAAEbV4Uwdzab&OrderID=UyBIBe.pK8kAAAEbR4Uwdzab&ProductID=LxJIBe.ovSEAAAEaVZcGcbZW&FileName=/jdk-

apache2.2.9,具体版本为:apache 2.2.9-win32-x86-no ssl-r2.msi ,最新的,下载地址为:

http://apache.mirror.phpchina.com/httpd/binaries/win32/apache_2.2.9-win32-x86-no_ssl-r2.msi

tomcat6.0.18,是最新的,这里我们下载解压版本的,不下载安装版本的,下载地址为:

http://apache.mirror.phpchina.com/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.zip

JK连接器

还需要一个JK连接器,就是连接tomcat与apache的,

http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.26/

在这个页面下面有这么一条信息:

mod_jk-1.2.26-apache-2.2.4.so is for Apache 2.2, and works with Apache 2.2.4 and later. Rename to mod_jk.so before putting it in your Apache2.2/modules directory.

就是说如果我们用的apache服务器是apache2.2.4或更高的版本,就要要mod_jk-1.2.26-apache-2.2.4.so这个文件,并且要改名为mod_jk.so,所以我们就下这个:

http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.26/mod_jk-1.2.26-httpd-2.2.4.so

好了,需要的软件如果都下载好了,现在开始安装

第一步:

首先要安装的当然是JDK,安装JDK很简单,只需一直点击下一步即可,默认安装在C:/Program Files/Java/

可以自行修改路径,安装完成以后按下面的示例设置你的系统环境变量:我的电脑 -> 属性 -> 高级 -> 环境变量 (这里要添加的是系统变量,非用户变量)

点击新建,变量名:JAVA_HOME 变量值(这是我的,你的可能和我的不一样):C:/Java/jdk1.5.0_10

再点击新建,变量名:CLASSPATH

变量值(注意最前面有一个点): .;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar

再新建,变量名:PATH 变量值:%JAVA_HOME%/bin

环境变量设置好了,

第二步

安装apache2.2.9, 此处注意,如果你本机已经装了IIS并且占用了80端口,你可以选择禁用IIS或者给IIS指定其它端口,或者给Apache指定其它端口,根据实际情况进行设置。在Apache的安装过程中要设置Network Domain和Server Name为Localhost,设置你的Email地址(这个一定要设置,不然Apache启动不起来)。
安装完成之后,如果apache用的是80端口,那么在浏览器中输入 http://localhost/ ,如果使用的是其它端口例如81,则输入 http://localhost:81/ ,将会看到 Apache 的成功页面。此时Apache已经运行,在系统托盘可以看到它的图标,双击打开可以对Apache服务进行控制,我们下面还要安装Tomcat和JK,所以现在选择 Stop 停止 Apache 服务。

第三步

安装Tomcat,将Tomcat解压到 C:/tomcat 下,设置环境变量:

步骤和设置JDK的环境变量一样,新建,变量名:CATALINA_BASE,变量值:c:/tomcat

再新建,变量名:CATALINA_HOME,变量值:c:/tomcat

运行 C:/tomcat/bin/startup.bat 启动Tomcat,出现Tomcat页面则表示安装成功

第四步

将下载的mod_jk-1.2.26-httpd-2.2.4.so改名为mod_jk.so,放入apache安装目录下的modules目录下

下面进行服务器的配置

1.配置tomcat

查找Tomcat目录下的 conf/server.xml文件,找到<host></host>元素,像下面这样的:

      <Host name="localhost" appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

将appBase="webapps" 改成appBase="h:/wwwroot",当然,不一定要在h盘,在其他盘也可以,事先一定要把wwwroot这个文件夹建好

查找Tomcat目录下的 conf/workers.properties文件,并对比下方文本内容,如有不同处,以下方文本为准进行修改。

#让mod_jk模块知道tomcat的位置
workers.tomcat_home=C:/tomcat
#让mod_jk模块知道jre的位置
workers.java_home=C:/Java/jre1.5.0_10
#模块版本
worker.list=ajp13
#工作端口,若没占用则不用修改
worker.ajp13.port=8009
#本机,若上面的Apache主机不为locahost,作相应修改
worker.ajp13.host=localhost
#类型
worker.ajp13.type=ajp13
#代理数,不用修改
worker.ajp13.lbfactor=1

如果此文件不存在,则依以上内容创建。对Tomcat的设置进行任何修改后都要重启才可以生效.

2.配置Apache
打开H:/Apache2.2/conf下的httpd.conf,在最后加入下面这段代码并保存。

#此处mod_jk的文件为下载的文件改了名的
LoadModule jk_module modules/mod_jk.so
#指定tomcat监听配置文件地址
JkWorkersFile "C:/tomcat/conf/workers.properties"
#指定日志存放位置
JkLogFile "C:/tomcat/logs/mod_jk2.log"
JkLogLevel info


#让Apache支持对servlet传送,用以Tomcat解析
JkMount /servlet/* ajp13
#让Apache支持对jsp传送,用以Tomcat解析
JkMount /*.jsp ajp13
#让Apache支持对.do传送,用以Tomcat解析
JkMount /*.do ajp13

在httpd.conf文件中查找ServerAdmin 将值改为localhost,像下面这样

ServerAdmin localhost

同样,查找DocumentRoot ,将值改为上面appBase的值,我的是 h:/wwwroot,像下面这样:

DocumentRoot "H:/wwwroot"

查找 <Directory 将值改为 h:/wwwroot 像下面这样的:

#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "H:/wwwroot">

#您的站点项目所在路径,应与tomcat中的目录设置相同,据说以上两个必须同时设置才可以生效,没有试过不同的时候会有什么情况

查找DirectoryIndex,将值改为index.html index.htm index.jsp,还可以加入index.php,多个值之间用空隔隔开,像下面这样:

<IfModule dir_module>
    DirectoryIndex index.html index.htm index.jsp
</IfModule>

到此,所有的修改已经完成,在h:/wwwroot目录下新建一个index.html,内容为Hello,World!

双击系统托盘中的Apache图标,然后点击Start启动Apache服务。在地址栏中输入:http://localhost/,可以看到Hello,World!

启动tomcat,在地址栏中输入Http;//localhost:8080/ 如果你也能看到Hello,World!

那么我要恭喜您,apache和tomcat整合成功了

此外,用这个方法进行整合,tomcat对servlet会不敏感,也就是说不处理

解决办法是将servlet以.do的形式进行访问,这样tomcat就会进行处理了

以上是小弟这几天的学习以及实验成果,如果有问题请您跟贴,小弟第一时间出来帮您解决!!

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值