Topic: Windows环境下的tomcat + apache配置(绝对实践操作版) |
Print this page |
1.Windows环境下的tomcat + apache配置(绝对实践操作版) | Copy to clipboard |
Posted by: junsansi Posted on: 2006-04-13 17:27 Apache的HTTPD是目前比较受欢迎的网站服务器软件,它不但功能强大,而且完全免费,并且支持市场上流行的各种操作系统(Windows,Linux,Mac os)。同时对于Java Servlet/JSP的支持,通常也会使用同样Apache出品的Tomcat。 Tomcat除了支持Java Servlet/JSP之外,也可以当做网站服务器使用,但是在对于静态的html文件、图片文件等的解析效率上不如Apache HTTPD的执行效率高。应用tomcat的服务器如果网站的访问量较大,系统资源占用会明显升高,近日笔者在项目执行过程中遇到这一问题,便也想到同时应用tomcat+apache服务。Apache负责静态资源处理,tomcat负责jsp和java servlet等动态资源的处理。在网上看了不少介绍Apache和Tomcat集成的帖子。大多为互相转贴,有几个关键问题没有讲清楚,并且多数文章讲解中所举的软件版本都已经比较老旧。因而笔者总结自己实际操作的经验,希望对大家有所帮助。 准备工作: 1、 apache 2.0.55 下载地址:http://apache.justdn.org/httpd/binaries/win32/apache_2.0.55-win32-x86-no_ssl.msi 2、 Tomcat 5.5 下载地址:http://tomcat.apache.org/download-55.cgi 3、 JRE1.5.0 update6 下载地址:http://java.sun.com/j2se/1.5.0/download.jsp 你也可以选择安装JDK,JDK不仅包含了运行java应用程序的支持,同时也包含J2SE的开发包。但如果您只是应用的话,我建议您仅下载JRE即可,为什么?因为它小啊:) 4、JK-apache-2.0.55 下载地址: http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.15/mod_jk-apache-2.0.55.so 注意jk的版本一定要与你的apache版本相同。Jk下载可以直接到apache.org官网下载,有多种版本,适用于各种操作系统,地址如下: http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/ windows用户进入win32目录,不同的tomcat对应不同jk文件扩展名不同,有可能是*.dll,或者*.so,根据你的tomcat版本下载合适的jk版本。 安装,软件的安装顺序可以适当调整,但是jre(jdk)一定要在tomcat之前安装: 1、安装JRE(JDK) 此处选择默认安装即可,(旧版本的JDK安装完之后需要设置系统的环境变量,JRE和JDK1.5.0以后版本不设置也没关系。)安装完成之后你可以选择按照下面的示例设置你的系统环境变量:我的电脑->右键属性->常规->高级->环境变量 JAVA_HOME = d:\Java\jre1.5.0_06 CLASSPATH = .;d:\Java\jre1.5.0_06\lib\dt.jar;d:\Java\jre1.5.0_06\lib\tools.jar PATH = d:\Java\jre1.5.0_06\bin 注意文件路径要改成你实际安装的路径。 2、Apache安装 此处注意,如果你本机已经装了iis并且占用80端口,务必先在服务中将iis停止或禁用。软件默认安装即可。安装过程中设置Network Domain和Server Name为localhost,设置你的email地址,下方会让你选择only for the current user或for all users。默认选择for all users。这样Apache就会占用80端口,并且做为一个系统服务开机自运行。 安装完成之后,你在浏览器中输入http://localhost,将会看到Apache的成功页面.Apache的主目录是d:\Apache\Apache2,此时Apache,已经运行,你可以在窗口的托盘看到他的图标,双击图标,在弹开的窗口选择"Open Apache Monitor",点Stop,停止Apaceh服务,因为下面要安装Tomcat和JK. 3、Tomcat安装 选择安装目录为了d:\Tomcat,其余为默认安装.成功后在浏览器中输入http://localhost:8080,出现Tomcat页面表示安装成功了。关于tomcat的设置已经有很多非常详细的文章,在此就不再详述了。 4、JK的安装 把mod_jk_2.0.55.so拷贝到d:\Apache\Apache2\modules\下. 以上安装全部完成后,打开cmd命令提示符,运行d:\Apache\Apache2\bin\Apache.exe -t 你将会看到"Syntax OK",表示Apache配置正常.这个命令非常有用,下面在继续配置Apache的时候还会再次用到。 配置服务器: 1、配置Tomcat 查找目录下的conf/workers.properties文件,并对比下方文本内容,如有不同以下方内容为准修改。 workers.tomcat_home=d:\Tomcat #让mod_jk模块知道Tomcat的位置 workers.java_home=d:\Java\jre1.5.0_06 #让mod_jk模块知道jre的位置 ps=\ worker.list=ajp13 #模块版本 worker.ajp13.port=8009 #工作端口,若没占用则不用修改 worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改 worker.ajp13.type=ajp13 #类型 worker.ajp13.lbfactor=1 #代理数,不用修改 如果文件不存在则创建。并填充上述内容。 2、配置Apache 打开d:\Apache\Apache2\conf下的httpd.conf,在最后加入下面这段代码并保存。 #设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理 LoadModule jk_module modules/mod_jk_2.0.55.so #此处mod_jk的文件为你下载的文件 JkWorkersFile "d:/Tomcat/conf/workers.properties" #指定tomcat监听配置文件地址 JkLogFile "d:/Tomcat/logs/mod_jk2.log" #指定日志存放位置 JkLogLevel info #设置虚拟主机 <VirtualHost localhost> ServerAdmin localhost DocumentRoot d:/test1 #您的站点项目所在路径,应与tomcat中的目录设置相同 ServerName localhost DirectoryIndex index.html index.htm index.jsp 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解析 JkMount /*.do ajp13 #让Apache支持对.do传送,用以Tomcat解析 </VirtualHost> #开头的行为注释,可以删除。此处的配置我是以设置虚拟目录,重新指定了serverName,DocumentRoot路径的方式配置站点,实际上,Apache的配置可以非常灵活,你也可以不采用虚拟目录的方式,而直接去修改站点的默认配置,使用任意文本编辑工具,搜索如ServerName,DocumentRoot,ServerAdmin等相关项,然后将该项的配置根据你的实际情况进行修改即可。我建议大家可以多多尝试不同的配置,这是一种很有乐趣的体验。 所有的修改完成这后,再次执行d:\Apache\Apache2\bin\Apache.exe -t 如果看到"Syntax OK",说明你所有配置无误,双击窗口的托盘中的图标,然后点击Start运行。 在地址栏中分别输入http://localhost/,与http://localhost:8080/若结果相同,Apache与Tomcat整合成功 注:作者原创,转载请注明 |
2.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: junsansi Posted on: 2006-04-13 17:30 目前在弄apache+tomcat的负载均衡方案,方法与此类似,基本搭建完毕,还有一些小问题,总结完之后我也会发表出来 欢迎大家有什么问题和想法与我交流! |
3.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: bluepure Posted on: 2006-04-13 20:09 apache2+tomcat可以用modajp,配置更简单。 |
4.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: junsansi Posted on: 2006-04-14 09:15 modajp是什么东西?我没有接触过,网上也没搜索着啊? 3楼是不是关键字写错啦 mod和ajp? |
5.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: Breeze Posted on: 2006-04-14 10:55 junsansi wrote: apache2.2才可以,应该是mod_proxy_ajp。 |
6.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: heartache Posted on: 2006-04-22 10:10 tomcat全部英文,有好多个,我是新手,到底应该下那些东西 ?请指点 |
7.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: Breeze] | Copy to clipboard |
Posted by: YuLimin Posted on: 2006-04-22 14:43 Breeze wrote: 没有听过,机制是否一样? |
8.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: qlqsh Posted on: 2006-05-16 11:27 我这个配置的始终有问题。 配置完LoadMoudle后总是告诉我mod_jk2.so不可用(我改成mod_jk2.so的)。我的apache是2.2.2,tomcat5.0,connection那个是2.0.55。难道版本不一样的问题? 死活就是不行。望大大给解决一下。 |
9.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: qlqsh Posted on: 2006-05-16 15:04 谢谢大大的文章,很管用,基本解决问题了。下面有个新的问题。希望知道的告知一下。 这个:调jsp就报这个错 Service Temporarily Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. -------------------------------------------------------------------------------- Apache/1.3.31 Server at localhost Port 80 有谁知道这是什么问题?肯定是端口的,但就是找不到原因。 |
10.Windows环境下的tomcat5.5.17 + apache2.2.2配置 不成功 [Re: junsansi] | Copy to clipboard |
Posted by: newwalk Posted on: 2006-06-13 08:53 qlqsh ,请教我的apache 也是2.2.2 tomcat 5.5.17 conector mod_jk-apache-2.0.55.so 拷入modules目录时将mod_jk-apache-2.0.55.so 改为mod_jk.so 当在httpd.conf中加入LoadModule jk_module modules/mod_jk.so 时提示语法错误 cannot load E:\mysoft\apache\modules\mod_jk.so into server \xd5 \xd2 \xb2 \xbb \xb5 \xbd \xd6 \xb8 \xb6 \xa8 \xb5 \xc4 \xb3 \xcc \xd0 \xf2 \xa1 \xa3 |
11.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: junsansi Posted on: 2006-06-14 15:32 可能是路径不对的原因,或者就是你的配置里已经有了一个mod_jk.so |
12.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: binge Posted on: 2006-07-02 19:49 版本不一样是不行的 比如2.2.0 和2.0.5x是不兼容的 |
13.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: binge Posted on: 2006-07-20 01:17 这里有人已整合到了一起 http://www.easyjf.com/html/bbs/20060605/359925-159756119.htm |
14.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: yeafee Posted on: 2006-08-14 19:32 多谢的.配置过程一切顺利. |
15.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: LIONEL_C Posted on: 2006-11-03 14:16 下載Apache、Tomcat、mod_jk,其中mod_jk要與Apache版本相應,相應不代表相同,能用就行。安裝Apache、Tomcat,把mod_jk放在任意目錄。 Tomcat的\conf\server.xml內<Engine..></Engine>中加入: <Listener className="org.apache.jk.config.ApacheConfig" modJk="C:\Program Files\Apache Software Foundation\Apache2.2\modules\mod_jk-apache-2.2.3.so" /> 註:指給modJK的路徑是我的路徑哦。 重新?動Tomcat,其conf目錄內會產生auto及jk兩個目錄。把auto錄中的mod_jk.conf複製到jk目錄內,並把副檔名由.conf改為.conf-auto。 到Apache目錄,在其conf目錄內的httpd.conf中最後一行加入: Include "C:/Program Files/Apache Software Foundation/Tomcat 5.5/conf/jk/mod_jk.conf-auto" Apache重新?動後,一切大功告成。 可參考:http://tomcat.apache.org/connectors-doc/howto/apache.html中【Using Tomcat auto-configure】一段,其中有說明: The auto-configure works only for a single Tomcat running on the same machine where Apache (httpd) is running. 意即auto-configure只限於Apache和Tomcat在同一機器上。 |
16.Re:Windows环境下的tomcat + apache配置(绝对实践操作版) [Re: junsansi] | Copy to clipboard |
Posted by: sweetheart Posted on: 2009-02-04 14:11 我按上面的配置怎么整合不了,也没有报啥错,奇怪了。 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |