资料库 ☆ 华陌网
完整版 »
Apache2.0.43与Tomcat4.1.12的整合安装(附apache配置SSL说明)
Apache2.0.43与Tomcat4.1.12的整合安装(附apache配置SSL说明)
(0 篇回复 1519 浏览)
-- 作者:阿博 1. 软件准备 1.1. window2000操作系统。要求:window 2000 Professional 或Server 。 有固定的IP,或者可以自动获取IP。 1.2. Apache2.0.43WEB服务软件(支持:HTTP,HTTPS)。下载: http://www.apache.inetcosmos.org/dist/httpd/binaries/win32/apache_2.0.43-win32-x86-no_ssl.msi 1.3. Tomcat4.1.12应用服务软件(Servlet与JSP的引擎)。下载: http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.12/bin/jakarta-tomcat-4.1.12.exe 1.4. j2sdk1.4.1 下载:http://java.sun.com/j2se/1.4.1/download.html (注意是Windows (all languages, including English)的sdk版) 1.5. mod_jk-2.0.43.dllApache与Tomcat的通讯的工具模块(动态链接库)。下载: http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/v1.2.0/bin/win32/mod_jk-2.0.43.dll (说明:务必与Apache版本一致,并注意能支持的AJP版本) AJP:Apache JServer Protocol 2. 环境准备 确定以上软件安装在什么地方,先计划好。即:先配置好环境变量。 通过“我的电脑”-属性-环境变量,新增加三个环境变量: (1) JAVA_HOME,其值为:C:\j2sdk1.4.1 (2) TOMCAT_HOME,其值为:C:\Tomcat4 (3) CLASSPATH,其值为:%JAVA_HOME%\lib;%TOMCAT_HOME%\lib (4) APACHE2_HOME,其值为:C:\Apache2 注:以上路径,均可以自定。以下的说明将以上面的描述为例。 3. 软件安装 3.1. 安装j2sdk 按照安装向导进行安装(安装到C:\j2sdk1.4.1下)。 3.2. 安装apache 按照安装向导进行安装 (1)路径 :选择安装目录为C:\,安装成功后其路径为:C:\Apache2) (2)典型或自定义安装均可。 (3)域名:如果为工作站(win2000 professional),填上:localhost (4)服务名:如果为工作站(win2000 professional),填上:localhost 3.3. 安装Tomcat 按照安装向导进行安装(更改安装目录为C:\Tomcat4,没必要把tomcat安装成Services,方便下面操作)其间会要你输入Admin(系统管理员)的口令。 3.4. 安装mod_jk 把 Mod_jk-2.0.43.dll 拷到C:\Apache2\modules目录下。 至此软件安装完毕。 4. 首次配置及测试 以上安装完成后,Apache,Tomcat应该都可以各自独立运行。 (1)确认没有其它的WEB服务或程序占用80和8080端口。尤其是注意:IIS。如果有,请先停止这些服务程序。 (2)将Apache缺省的发布主目录(C:\Apache2\htdocs)下的index.html.en改名为index.html。 (3)运行Apache2 (4) 打开浏览器,在地址栏中输入:http://localhost/ 检验:此时能在浏览器中看到Apache2的欢迎界面.说明Apache2工作正常.(注:Apache2默认端口为80) (5)运行Tomcat4. (6)打开浏览器,在地址栏中输入:http://localhost:8080/ 检验:此时能在浏览器中看到Tomcat的欢迎界面.说明Tomcat工作正常.(注:Tomcat默认端口为 8080 5. 整合配置 这一节是稍稍复杂一点。 对Apache与Tomcat做相应的配置,让其共同为你工作。 注:若Apache2与Tomcat4正运行着,请关闭它们。 设置的原理主要是: Tomcat缺省条件下,已经启动AJP1.3守护线程,只需Apache加载mod_jk模块,主动与Tomcat联接。因此下面的设置,基本上都是对于Apache这边来说的。 5.1. 修改httpd.conf (1)设置主页文件类型:打开C:\Apache2\conf下的httpd.conf,查找"DirectoryIndex",在index.html的后面添加index.jsp并保存,注意相互之间应有空格。 (2)设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理:打开C:\Apache2\conf\httpd.conf,在最后加入下面这段代码并保存。 ## Using mod_jk2.dll to redirect dynamic calls to Tomcat ##装载模块,用于处理连接 LoadModule jk_module modules/mod_jk-2.0.43.dll ##设置模块的工作文件,下面将会对workers.properties进行详细说明 JkWorkersFile "C:/Tomcat4/conf/workers.properties" ##设置模块工作的日志文件,Tocmat启动时会自建 JkLogFile "C:/Tomcat4/logs/mod_jk2.log" ##让Apache支持对servlet, jsp 传送,用以Tomcat解析 JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 5.2. 增加workers.properties 在C:\Apache2\conf下新建一个文件workers.properties 注意文件后缀。 其内容如下: ##让mod_jk模块知道Tomcat workers.tomcat_home=c:\Tomcat4 ##让mod_jk模块知道j2sdk workers.java_home=c:\j2sdk1.4.1 ##路径分隔符,即注意:c:\Tomcat4 ps=\ ##模块版本,现有ajp14了,不要修改 worker.list=ajp13 ##联接端口。可参见 tomcat 的设置文件:c:\tomcat4\conf\erver.xml中的:Define a Coyote/JK2 AJP 1.3 Connector on port 8009。 worker.ajp13.port=8009 ##Tomcat所在的主机的地址。 worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.lbfactor=1 6. 整合测试: (1)启动Apache2,Tomcat4 。注:启动的顺序无关。 (2)打开你的浏览器,在地址栏中输入http://localhost:8080/ ,若与上面的测试相同,则Tomcat重新配置后正常! (3)在地址栏中输入http://localhost/index.jsp,若与http://localhost:8080/的结果相同,说明Apache2与Tomcat4整合成功了! 7. 常见问题 (1)利用monitor apache server启动Apache 时,提示:“the requested operate is failed”。原因:加载mod_jk模块时请求与tomcat通讯失败。 解决:查看c:\apache2\conf\httpd.conf的最后几行有关LoadModule jk_module modules/mod_jk-2.0.43.dll配置和workers.properties的内容。 (2)在 monitor apache server启动Apache 时提示成功。而error.log提示:[Mon Dec 09 20:52:23 2002] [error] (730038)在一个非套接字上尝试了一个操作。winnt_accept: AcceptEx failed. Attempting to recover.原因:未明。 解决:换一台机器试试:=) (3)在DOS下启动时,提示:不能加载 mod_jk。解决:请更换mod_jk的版本。 -------------------------------------------------------------------------------- -- 作者:mdwolf -- 发布时间:2002-12-10 20:45:55 -- 补充: (jakarta主页) Apache JK 1.2.0 (IIS redirector and mod_jk) for Win32 You'll find here binaries for Apache 1.3 and 2.0. Build under Windows 2k, Apache 1.3.26 and 2.0.42, IIS 5.0 isapi_redirector.dll is for IIS web server mod_jk-1.3.26.dll is for Apache 1.3.x mod_jk-2.0.42.dll is for Apache 2.0.42 (and only 2.0.42) jni_connect.dll is the JNI callback stuff 所以你的这个: ******* Apache与Tomcat的通讯的工具模块(动态链接库)。下载: http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/v1.2.0/bin/win32/mod_jk-2.0.43.dll ******* 该改为: Apache与Tomcat的通讯的工具模块(动态链接库)。下载: http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/v1.2.0/bin/win32/mod_jk-2.0.42.dll -------------------------------------------------------------------------------- -- 作者:mdwolf -- 发布时间:2002-12-10 21:28:28 -- 修改Apache 的 http.conf : 加入这个: ## Using mod_jk2.dll to redirect dynamic calls to Tomcat ##装载模块,用于处理连接 LoadModule jk_module modules/mod_jk-2.0.43.dll ##设置模块的工作文件,下面将会对workers.properties进行详细说明 JkWorkersFile "C:/Tomcat4/conf/workers.properties" ##设置模块工作的日志文件,Tocmat启动时会自建 JkLogFile "C:/Tomcat4/logs/mod_jk2.log" ##让Apache支持对servlet, jsp 传送,用以Tomcat解析 JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 同时加入了prop 文件,然后Apache 启动失败! 还原conf文件,Apache启动正常,arbo,请指点! -------------------------------------------------------------------------------- -- 作者:阿博 -- 发布时间:2002-12-11 10:34:54 -- jakarta主页说的是:Apache 4.0.42,并且说的是还要与IIS整合的。 我安装apache4.0.43就是使用了:mod_jk-4.0.43 模块。成功啦。想想不会错。 ---------------------- 加入了prop 文件,然后Apache 启动失败: 肯定是 workers.properties 内容有误。检查一下,包括环境变量的配置。 建议:在DOS窗口启动,可以看到详细出错提示。 -------------------------------------------------------------------------------- -- 作者:mdwolf -- 发布时间:2002-12-11 11:49:15 -- mod_jk-4.0.43 的文件在你给地址上根本无法找到,你是否给的路径正确,我去那个页面查了,根本就没有这个文件! -------------------------------------------------------------------------------- -- 作者:free -- 发布时间:2002-12-11 18:42:19 -- mod_ssl是apache2自带的。 在安装前用config加载(缺省的不带mod_ssl),然后安装就可以了。运行前要修改ssl.conf把密匙和认证修改成自己的。在linux下就这么简单。 -------------------------------------------------------------------------------- -- 作者:mdwolf -- 发布时间:2002-12-12 09:43:44 -- 啊博: 我的apache和tomcat无法整合正一块,我修改了 httpd.conf文件添加了如下代码: LoadModule jk_module modules/mod_jk-2.0.43.dll JkWorkersFile "D:/server/apache2/conf/workers.properties" JkLogFile "D:/server/Tomcat4.1.12/logs/mod_jk2.log" JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 并建立了workers.properties文件 workers.tomcat_home=D:\server\Tomcat4.1.12 workers.java_home=D:\server\jdk1.4.1 ps=\ worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.lbfactor=1 报APACHE 启动失败! 咋办呢? -------------------------------------------------------------------------------- -- 作者:阿博 -- 发布时间:2002-12-13 01:41:32 -- 1. SSL的安装 1.1. 说明 经过测试,Apache2.0.43版本,还没有一个完全支持的mod_ssl版本。故以下例子采用Apache2.0.39为例。并且可以不考虑是否已经配置好Tomcat。 这之前已经描述Apache与tomcat设置可以存在或不存在。 1.2. 下载软件 (1) http://www.modssl.org/contrib/ftp/contrib/ Apache-2.0.39-Mod_SSL-OpenSSL-0.9.6d-Win32.zip 注:里面包含有Apache-2.0.39 和 mod_ssl.so (2) http://www.modssl.org/contrib/ftp/contrib/ OpenSSL-0.9.6d-Win32.zip 注:里面有 opensl-0.9.6d 1.3. 安装配置 (1)安装openssl 解压OpenSSL-0.9.6d-Win32.zip后,直接拷到C:下,目录名为:openssl 并在“环境”的path中,增加:c:\openssl (2)安装mod_ssl.so 解压Apache-2.0.39-Mod_SSL-OpenSSL-0.9.6d-Win32.zip 把目录Apache-2.0.39-Mod_SSL-OpenSSL-0.9.6d-Win32拷贝到C盘下,并改名为:Apache-2.0.39。 注:如果已经安装有Apache2.0.39,可以只拷/modules/mod_ssl.so 到已经安装的$Apache\modules\目录下。 (3)修改:$apache\conf\httpd.conf 把里面所有的/Apache2换成:C:/Apache-2.0.39 在最后新增一行
Include conf/ssl.conf (4)增加:$apache\conf\ssl.conf文件 其内容如下: ##################### 2002-12-12 add by load SSL #
LoadModule ssl_module modules/mod_ssl.so Listen 443 AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl SSLPassPhraseDialog builtin SSLSessionCache dbm:logs/ssl_scache SSLSessionCacheTimeout 300 SSLMutex file:logs/ssl_mutex SSLRandomSeed startup builtin SSLRandomSeed connect builtin
DocumentRoot "c:/Apache-2.0.39/htdocs" ServerName new.host.name:443 ServerAdmin you@your.address ErrorLog logs/error_log TransferLog logs/access_log SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCertificateFile c:/Apache-2.0.39/conf/www.saic.rosettanet.org.crt SSLCertificateKeyFile c:/Apache-2.0.39/conf/www.saic.rosettanet.org.key
SSLOptions +StdEnvVars
SSLOptions +StdEnvVars
SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog logs/ssl_request_log \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
#
# over 注意:与实际应用需要修改两个地方:DocumentRoot,SSLCertificateFile,SSLCertificateKeyFile (5)检验 进入 $Apache\bin目录下, 使用 Apache ?t 来检验配置文件是否有效。 尤其是对于检验模块的动态加载比较有效。 1.4. 测试 启动:Apache ?D SSL 浏览器输入:https://localhost/index.html 如果显示出正常界面,则OK。 注:在ssl.conf配置文件中使用了IfDefine SSL脚本,所以启动时要加上参数:-D SSL。 Ok!上面介绍完毕。 1.5. 创建自己认证 见相关文档。或参阅附2。 2. 增加虚拟主机 真正的实用,还得介绍如何增加虚拟主机。 暂缺。 3. 常见问题 (1) 利用monitor apache server启动Apache 时,提示:“the requested operate is failed”。原因:加载mod_jk模块时请求与tomcat通讯失败。解决:查看c:\apache2\conf\httpd.conf的最后几行有关LoadModule jk_module modules/mod_jk-2.0.43.dll配置和workers.properties的内容。 (2) 在 monitor apache server启动Apache 时提示成功。 而error.log提示:[Mon Dec 09 20:52:23 2002] [error] (730038)在一个非套接字上尝试了一个操作。 : winnt_accept: AcceptEx failed. Attempting to recover.。 原因:未明。 解决:换一台机器试试:=) (3) 在DOS下启动时,提示:不能加载 mod_jk。解决:请更换mod_jk的版本。 (4)在DOS下启动时,提示: Cannot load C:/Program Files/Apache Group/Apache2/modules/mod_ssl.so into serve : 找不到指定的模块。 原因:加载mod_ssl动态链接库不成功。 解决:更换 mod_ssl 版本,或者 openssl 没有安装,或者在环境变量path中openssl路径不对。建议使用 apache ?t 来检测。 4. 体会 (1) 涉及软件和组件很多,它们之间的版本关系比较复杂。配置并不复杂,但要搭配一个满足需求的系统,并不容易。 (2) 首先,根据需求,确定当前有哪些版本已经提供。咨询:http://www.apache.inetcosmos.org/dist/httpd/binaries/ http://www.modssl.org/contrib/ftp/contrib/ (3) 然后下载相关软件,在配置中,除非你已是高手,否则根据上面的介绍按部就班进行配置。 (4) Apache是一个高效的系统,但是建立在完善的复杂的配置之上。 -------------------------------------------------------------------------------- -- 作者:阿博 -- 发布时间:2002-12-13 01:46:24 -- MD,apache 启动失败,总得有提示吧。是什么? 在 DOS下启动,可以看到更多的提示。 (1)使用 apache -t 看看具体原因。 -------------------------------------------------------------------------------- -- 作者:ldpwolf -- 发布时间:2002-12-13 10:47:05 -- Syntax error on line 978 of C:/Apache2/conf/httpd.conf: Invalid command 'JkWorkersFile', perhaps mis-spelled or defined by a module not included in the server configuration -------------------------------------------------------------------------------- -- 作者:ldpwolf -- 发布时间:2002-12-13 10:48:11 -- 我想我和他的原因是一样的 是什么问题那 -------------------------------------------------------------------------------- -- 作者:mdwolf -- 发布时间:2002-12-13 18:51:59 -- I GOT IT! 看我的错误在这里: LoadModule jk_module modules/mod_jk-2.0.43.dll 我用的是mod_jk-2.0.42.dll ,改了就行! -------------------------------------------------------------------------------- -- 作者:Sager -- 发布时间:2002-12-24 16:33:34 -- mod_jk-2.0.43.dll下载地址: http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk2/release/v2.0.2/bin/win32/mod_jk2-2.0.43.dll -------------------------------------------------------------------------------- -- 作者:vicoo -- 发布时间:2002-12-25 15:28:34 -- mod_jk-2.0.43.dll找不着,有个2.0.42的能不能用? -------------------------------------------------------------------------------- -- 作者:vicoo -- 发布时间:2002-12-25 15:32:08 -- 找着了 谢谢“闲人”:) -------------------------------------------------------------------------------- -- 作者:vicoo -- 发布时间:2003-01-03 16:19:46 -- mod_jk-2.0.43.dll和mod_jk2-2.0.43.dll 是不一样的吧 mod_jk-2.0.43.dll下载地址: http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk2/release/v2.0.2/bin/win32/mod_jk2-2.0.43.dll -------------------------------------------------------------------------------- -- 作者:linux -- 发布时间:2003-01-10 04:50:08 -- 啊博: 我的apache和tomcat无法整合正一块,我修改了 httpd.conf文件添加了如下代码: LoadModule jk_module modules/mod_jk2-2.0.43.dll JkWorkersFile "D:/apache2/conf/workers.properties" JkLogFile "D:/Tomcat4/logs/mod_jk2.log" JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 并建立了workers.properties文件 workers.tomcat_home=D:\Tomcat4 workers.java_home=D:\j2sdk ps=\ worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.lbfactor=1 报APACHE 启动失败! 请求帮助,谢谢. 注: D:\Tomcat4 是我的 Tomcat 目录; D:\j2sdk 是我的 jdk 目录; D:\apache2 是我的 apache 目录. 我是在windows中启动时错误提示是:The requested operation has failed ! 在DOS下的错误提示是: Syntax error on line 976 of D:/Apache2/conf/httpd.conf: Can't locate API module structure `jk_module' in file D:/Apache2/modules/mod_jk2 -2.0.43.dll: No error [此贴子已经被作者于2003-01-10 04:50:08编辑过] -------------------------------------------------------------------------------- -- 作者:linux -- 发布时间:2003-01-10 08:00:49 -- 不断的测试和努力,我的搞好了。可是,怎么和mysql连接呢?又有新的问题了。。。。 高手帮我 -------------------------------------------------------------------------------- -- 作者:snowlovery -- 发布时间:2003-01-10 10:44:32 -- 如何进入admin 页面啊,老兄 -------------------------------------------------------------------------------- -- 作者:awey -- 发布时间:2003-01-14 16:32:50 -- http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/v1.2.2/bin/win32/ -------------------------------------------------------------------------------- -- 作者:傻了吧 -- 发布时间:2003-01-21 15:56:22 -- 在安装前我不关闭IIS 它占了80的口 但在APACHE2.0.43中的httpd.CONF 里修改端口 怎么做? -------------------------------------------------------------------------------- -- 作者:microsystem -- 发布时间:2003-01-22 00:01:13 -- 我整合了TOMCAT4.1.18和Aapche2.0.44,无论是运行JSP还是SERVLET都成功! 但是有一些问题出现了: 首先,本来在tomcat4.0.4和Apache1.3.26下运行正常的纯html文件不管是否加了
都不能正常显示中文!但只要把其改为JSP文件,加上 <%@ page contentType="text/html;charset=gb2312"%>就能正常显示!不知是何原因? 另外,我在tomcat4.0.4和Apache1.3.26下的JSP页面中能正常导入的自定义类(这些类均放在WEB-INF/classes下)并且运行正常,但到了TOMCAT4.1.18和Aapche2.0.44之后,去总是出错说找不到该类,说什么要在导入语句之后加“.”,文件本身没有做任何改变,这又是为什么呢,请指点?! -------------------------------------------------------------------------------- -- 作者:dilidolo -- 发布时间:2003-01-22 08:59:20 -- Apache 2 问题多多,没什么必要的话还是等. 你们看见有多少大站用APACHE 2的吗? 2虽然好,可好的不一定实用. -------------------------------------------------------------------------------- -- 作者:mdwolf -- 发布时间:2003-01-22 09:54:28 -- 5460就是用的这个 -------------------------------------------------------------------------------- -- 作者:my420 -- 发布时间:2003-01-29 16:32:50 -- 我的apache2启动的时候报下面的错误,该如何处理? Syntax error on line 225 of C:/bbs/Apache2/conf/httpd.conf: Can't locate API module structure `jk_module' in file C:/bbs/Apache2/modules/mod -jk2-2.0.43.dll: No error -------------------------------------------------------------------------------- -- 作者:傻了吧 -- 发布时间:2003-02-01 14:53:32 -- 字面上的理解是 jk2-2.0.43.dll 无法进行操作 就是无法联系 jk2-2.0.43.dll 这个有点问题 换成 jk2-2.0.42.dll 好点 -------------------------------------------------------------------------------
Powered by
flymote.com 华陌网
©
华陌
* archiver
* SE *