实战Tomcat与Apache整合

王朝system·作者佚名  2006-01-09
宽屏版  字体: |||超大  

这里首先感谢以下文章的作者,特别是第一篇文章的作者Junsan Jin,在他们的指引下,才完成了这次整合,特表示最诚挚的感谢:

1.Tomcat与Apache整合指南

http://dev.csdn.net/article/67/67170.shtm

2.配置整合Win+Apache+PHP+MySQL+Tcomcat(或Resin)完全手册

http://www.ttud.com/info/1264.htm

正文开始:

第一部分:准备软件

1. j2sdk-1_4_2_04-windows-i586-p.exe

下载地址:http://www.dascom.com.cn/download/j2sdk-1_4_2_04-windows-i586-p.exe

http://www.dascom.com.cn/qudong/download.asp

2. apache_2.0.53-win32-x86-no_ssl.msi

下载地址:http://apache.justdn.org/httpd/binaries/win32/apache_2.0.53-win32-x86-no_ssl.msi

3. jakarta-tomcat-5.0.30.exe

下载地址:http://apache.justdn.org/jakarta/tomcat-5/v5.0.30/bin/jakarta-tomcat-5.0.30.exe

4. mod_jk_1.2.6_2.0.50.dll

下载地址:http://apache.linuxforum.net/dist/jakarta/tomcat-connectors/jk/binaries/win32/jk-1.2.6/

第二部分:安装程序

1. 安装j2sdk1.4.2

将其安装在C:\j2sdk1.4.2_04下

2. 安装Apache服务器

运行Apache的自动安装包,安装Apache2.0.53到C:\Apache\Apache2目录下。

3. 安装Tomcat服务器

运行Tomcat的自动安装包,安装Tomcat5.0.30到C:\Apache\Tomcat5目录下。

4. 安装mod_jk

拷贝mod_jk_1.2.5_2.0.50.dll文件到C:\Apache\Apache2\modules文件夹下。

5. 准备工作目录和测试文件

在E:盘新建目录www,并创建一个基本的index.jsp文件,源码如下所示:

<%

out.println("<html>");

out.println("<body>");

out.println("Welcome");

out.println("</body>");

out.println("</html>");

%>

第三部分:配置Apache服务器

编辑httpd.conf文件,使用文本编辑器打开httpd.conf文件,在文件的最后添加如下内容:

# Using mod_jk2.dll to redirect dynamic calls to Tomcat

LoadModule jk_module modules/mod_jk_1.2.6_2.0.50.dll

JkWorkersFile "C:/Apache/Tomcat5/conf/workers.properties"

JkLogFile "C:/Apache/Tomcat5/logs/mod_jk2.log"

JkLogLevel info

JkMount /servlet/* ajp13

JkMount /*.jsp ajp13

Alias /web "E:/www/"

<Directory "E:/www">

Options Indexes MultiViews

AddOutputFilter Includes html

AllowOverride None

Order allow,deny

Allow from all

</Directory>

第四部分:配置Tomcat服务器

1. 建立workers.properties文件

在C:/Apache/Tomcat5/conf/目录下新建文本文档并命名为workers.properties,写入如下内容:

workers.tomcat_home=C:\Apache\Tomcat5 #让mod_jk模块知道Tomcat

workers.java_home=C:\j2sdk1.4.2_04 #让mod_jk模块知道j2sdk

ps=\

worker.list=ajp13 #模块版本,现有ajp14了,不要修改

worker.ajp13.port=8009 #工作端口,若没占用则不用修改

worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改

worker.ajp13.type=ajp13 #类型

worker.ajp13.lbfactor=1 #代理数,不用修改

worker.loadbalancer.type=lb

worker.loadbalancer.balanced_workers=ajp12, ajp13

worker.inprocess.type=jni

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar

worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar

worker.inprocess.cmd_line=-config

worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml

worker.inprocess.cmd_line=-home

worker.inprocess.cmd_line=$(workers.tomcat_home)

worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll

worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout

worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr

worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)

2. 修改server.xml文件

在</HOST>的前一行加入如下内容。

<Context path="/web" docBase="E:/www" debug="0" reloadable="true" > </Context>

3.修改jk2.properties文件

修改后内容如下:

## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED

## WHEN YOU EDIT THE FILE.

## COMMENTS WILL BE _LOST_

## DOCUMENTATION OF THE FORMAT IN JkMain javadoc.

# Set the desired handler list

handler.list=apr,request,channelJni

#

# Override the default port for the socketChannel

# channelSocket.port=8019

# Default:

# channelUnix.file=${jkHome}/work/jk2.socket

# Just to check if the the config is working

# shm.file=${jkHome}/work/jk2.shm

# In order to enable jni use any channelJni directive

# channelJni.disabled = 0

# And one of the following directives:

# apr.jniModeSo=/opt/apache2/modules/mod_jk2.so

# If set to inprocess the mod_jk2 will Register natives itself

# This will enable the starting of the Tomcat from mod_jk2

# apr.jniModeSo=inprocess

#request.tomcatAuthentication=true

request.tomcatAuthentication=false

第五部分:配置系统环境

本人用的Win98,所以直接修改autoexec.bat文件。

在文件中加入如下语句

SET JAVA_HOME=C:\j2sdk1.4.2_04

SET TOMCAT_HOME=C:\Apache\Tomcat5

SET CATALINA_HOME=C:\Apache\Tomcat5

SET PATH=%PATH%;%JAVA_HOME%\BIN

SET CLASSPATH=;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tool.jar;%JAVA_HOME%\lib\NetComponents.jar;%JAVA_HOME%\lib\mm.mysql-2.0.4-bin.jar

SET CLASSPATH=%CLASSPATH%;%TOMCAT_HOME%\common\classes;%TOMCAT_HOME%\common\lib;%TOMCAT_HOME%\common\lib\servlet-api.jar

如使用的是Win2000或Win XP,应该稍有不同,但上面的环境变量还是需要的。

设置MS DOS方式的属性

找到startup.bat和shutdown.bat文件,右键属性,将其中内存->常规内存->初始环境改为最大4096,否则Tomcat会启动不起来。

以上配置完成后需重新启动系统。

第六部分:运行测试程序

先运行C:\Apache\Tomcat5\bin\startup.bat启动Tomcat,再运行C:\Apache\Apache2\bin\Apache.exe启动Apache。

打开IE浏览器,分别输入如下地址:

http://127.0.0.1/web/index.jsp

http://127.0.0.1:8080/web/index.jsp

如果出现的页面相同,均打印出

Welcome

说明配制成功。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有