Windows2000 server下的Apache2.0.47与Tomcat4.1.27的整合配置方法

类别:Java 点击:0 评论:0 推荐:

 这两天为了架设一个学习jsp的环境,参考网上的文章,折腾了2天才搞定Apache2+tomcat4.1的整合,下面我的整合总结。如果你参考这篇文章遇到问题请和我联系[email protected]

一、            软件准备:
假设你有一台能正常运行win2000 server的软硬件环境。

1、j2sdk1.4.1:

到 http://java.sun.com/j2se/下载!

(注意是Windows (all languages, including English)的sdk版)

2.Apache2.0.47:

到 http://archive.apache.org/dist/httpd/binaries/win32/apache_2.0.47-win32-x86-no_ssl.msi下载!

3.Tomcat4.1.27

到http://apache.oregonstate.edu/jakarta/tomcat-4/binaries/jakarta-tomcat-4.1.27.exe下载!

4.mod_jk.dll: 到 http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/v1.2.4/bin/win32/mod_jk_2.0.46.dll下载!

(说明,由于参考网上的文章用mod_jk-2.0.43.dll与Apache2.0.47配置没成功,现用mod_jk-2.0.46.dll代替)

二、            软件安装

l        安装jdk

不需要安装源代码和Demo。 按照安装向导进行安装,我选择安装到c:\ j2sdk1.4.0_01, 设置Java home的环境变量

           JAVA_HOME=c:\j2sdk1.4.0_01

添加JAVA_HOME 和 JAVA_HOME\bin 到系统环境变量 PATH ,我的设置是

           C:\j2sdk1.4.0_01;C:\j2sdk1.4.0_01\bin

l        安装Apache2.0.47

按照安装向导进行安装(选择安装目录为d:\,方便下面操作;安装成功后其路径为:d:\Apache2),安装过程中射指你的Domain和ServerName 为你的服务器名Fully Qualified Domain Name ( FQDN )或者设置为 localhost(这只是适合于测试,只能通过本机访问。

l        安装Tomcat 4.1.27

按照安装向导进行安装,更改安装目录为你要安装的目录,我所安装的目录是d:\ Tomcat4.1,其间会要你输入Admin(系统管理员)的口令。

设置Tomcat home的环境变量,再添加一个Catalina home

TOMCAT_HOME= d:\Tomcat4.1

CATALINA_HOME=d:\Tomcat4.1

l        安装于配置mod_jk.dll

将下载的mod_jk-2.0.46.dll复制到D:\Apache2\modules下,打开D:\Apache2\conf\httpd.conf,在最后加入下面这段代码并保存。
#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
# Using mod_jk2.dll to redirect dynamic calls to Tomcat
LoadModule jk_module modules/mod_jk_2.0.46.dll

 

 

三、            分别测试Apache和Tomcat

l        打开D:\Apache2\conf\httpd.conf,查找 AddDefaultCharset ISO-8859-1 改成 #AddDefaultCharset ISO-8859-1

AddDefaultCharset GB2312

打开D:\Apache2\htdocs\index.html.zh-cn.gb2312 改成index.html

修改完成后重新启动Apache,打开浏览器输入http://localhost (注意需要停止IIS服务)。此时能在浏览器中看到Apache2的欢迎界面.说明Apache2工作正常.

l        将Tomcat启动,然后打开浏览器,在地址栏中输入:http://localhost:8080 检验:此时能在浏览器中看到Tomcat的欢迎界面.说明Tomcat工作正常.

四、            整合配置Apache2和Tomcat4.1(通过mod_jk模块)

拷贝和粘贴如下内容到D:\Apache2\conf\httpd.conf

JkWorkersFile "D:/Tomcat4.1/conf/workers.properties"

JkLogFile "D:/Tomcat4.1/logs/mod_jk2.log"

JkLogLevel info

#设置虚拟主机

<VirtualHost *>

   ServerAdmin [email protected]

   DocumentRoot d:/tomcat4.1/webapps/

   DirectoryIndex index.html index.htm index.jsp

   ServerName localhost

   ErrorLog logs/shsc-error_log.txt

   CustomLog logs/shsc-access_log.txt common

   JkMount /examples/servlet/* ajp13

   #让Apache支持对servlet传送,用以Tomcat解析

   JkMount /*.jsp ajp13

   #让Apache支持对jsp传送,用以Tomcat解析

</VirtualHost>

 

在D:\Tomcat4.1\conf下新建一个文件workers.properties 注意文件后缀,其内容如下:

workers.tomcat_home=d:\Tomcat4.1

#让mod_jk模块知道Tomcat

workers.java_home=c:\j2sdk1.4.0_01

#让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

#代理数,不用修改

五、            整合测试

l        启动Apache2.0.47与Tomcat4.1.27 。

l        2.在地址栏中分别输入http://localhost/examples/jsp/index.html ,与http://localhost:8080/examples/jsp/index.html若结果相同,那恭喜你,Apache2.0.47与Tomcat4.1.27整合成功了!!!

六、            建立自己的项目

你已有一个项目在d:\tomcat4.1\webapps\test目录下﹐包含index.jsp及其它文件,注意WEB-INF下的web.xml﹐一般有以下内容即可

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app

    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

    "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

  <display-name>Welcome to Tomcat</display-name>

  <description>

    Tomcat test

  </description>

</web-app>

设置Tomcat以支持你的项目,打开d:\Tomcat 4.1\conf\server.xml文件,在"</Host>"之前,"</Context>"之后添加 <Context path="/test" docBase="d:\tomcat4.1\webapps\test" debug="0" reloadable="true" crossContext="true"/>并保存。

重新启动Tomcat4,打开浏览器输入http://localhost/test/就可以看到测试页面了。

 

订正1:发现servlet的设置错误,参考下篇文章解决的。

原虚拟主机配置

<VirtualHost *>

   ServerAdmin [email protected]

   DocumentRoot d:/tomcat4.1/webapps/

   DirectoryIndex index.html index.htm index.jsp

   ServerName localhost

   ErrorLog logs/shsc-error_log.txt

   CustomLog logs/shsc-access_log.txt common

   JkMount /servlet/* ajp13

   #让Apache支持对servlet传送,用以Tomcat解析

   JkMount /*.jsp ajp13

   #让Apache支持对jsp传送,用以Tomcat解析

</VirtualHost>

更正后的配置

<VirtualHost *>

   ServerAdmin [email protected]

   DocumentRoot d:/tomcat4.1/webapps/

   DirectoryIndex index.html index.htm index.jsp

   ServerName localhost

   ErrorLog logs/shsc-error_log.txt

   CustomLog logs/shsc-access_log.txt common

   JkMount /examples/servlet/* ajp13

   #让Apache支持对servlet传送,用以Tomcat解析

   JkMount /*.jsp ajp13

   #让Apache支持对jsp传送,用以Tomcat解析

</VirtualHost>

参考资料:

http://www.macdevcenter.com/pub/a/mac/2002/08/20/tomcat_integration.html?page=1 

订正日期:2003.11.3

本文地址:http://com.8s8s.com/it/it17155.htm