整合Tomcat-5.5.4与apache-2.0.49

来源:百度文库 编辑:神马文学网 时间:2024/10/02 21:26:22

   上周末按一个朋友的要求,写一个整合Tomcat-5.5.4与apache-2.0.49的文档。很久没用Apache了,在家用了一两个小时才在自己的XP下配成功,简单整理了一个文档贴出来,与需要的人共享。我开始是在 apache 的conf 文件夹里建了一个mod_jk2.conf个文件,用JkSet config.file ***语句指到TOMCAT_HOME\conf\workers2.properties, 无论如何都不成功,最后就直接把workers2.properties拷到apache 的 conf 文件夹里就OK了。具体步骤如下:

1、假设Apache2安装在 C:\Program Files\Apache Group\Apache2, 上Apache网站下载jakarta-tomcat-connectors-jk2.0.4-win32-apache2.0.49.zip , 解压后将modules\mod_jk2.so拷贝到C:\Program Files\Apache Group\Apache2\modules里面。

2、 在C:\Program Files\Apache Group\Apache2\httpd.conf中设置Dynamic Shared Object (DSO) Support的那块区域里增加一行:

LoadModule jk2_module modules/mod_jk2.so

3、修改 Tomcat-5.5.4 HOME\conf\ 下的配置文件, 编辑jk2.properties,修改handler.list的值,要注意端口channelSocket.port设置的值,默认是8019,改成8009, 这样改各个配置文件的改动量最小。

# Set the desired handler list
# handler.list=apr,request,channelJni
handler.list=channelSocket,request
#,
# Override the default port for the socketChannel
channelSocket.port=8009

4、将 Tomcat-5.5.4 HOME \conf\ 下的workers2.properties 拷贝到 C:\Program Files\Apache Group\Apache2\conf 中,然后修改workers2.properties 内容:
  [logger.apache2]
  level=INFO

  [shm]
  file=C:\\apache\\Apache2\\logs\\shm.file
  size=1048576

  [channel.socket:localhost:8009]
  port=8009
  host=localhost

  [ajp13:localhost:8009]
  channel=channel.socket:localhost:8009
 
  [uri:/*]
  worker=ajp13:localhost:8009 

要进一步设置的,修改[uri:/*],比如改为[uri:/*.jsp]。当然这样记住要先将Apache的默认目录指到tomcat下的对应的应用. 此外[uri:/*] 这部分可以设置多个。

5、重新启动apache、tomcat, 访问apache的地址http://localhost/和tomcat的地址http://localhost:****/ ,如果看到一样的东西,应该就可以了。

6、配Apache的默认目录或虚拟主机,指到要用Apache来显示的目录里面去;网上很多,Apache本身的文档说的也比较清楚,就不详细说了。

7、如果是 Linux 平台的话,Apache 必须要在编译的时候加上选项,使其能动态的加载DSO模块,大概的步骤就是下载Apache源文件 ,然后依次执行:

#cd /usr/local/src/    ( /usr/local/src/ 就是保存安装源文件的文件夹 )
#tar -xzvf httpd-2.0.49.tar.gz
#cd httpd-2.0.49
#./configure --prefix=/usr/local/apache2  --enable-so  (-enable-so 这个选项最重要,一定要加上 )
#make
#make install

后来的步骤和windows下应该是一样的(那个so文件应该也可以在linux用),linux下面我这次没有试,不过思路和步骤应该差不多就是这样,俺以前配过。