linux下利用mod-jk实现apache和tomcat整合

看清楚了,这个是mod-jk,不是过时的mod-jk2,下面以ubuntu6.10版为例说明简单的安装过程。

1. 安装java或jre,并配置路径,不用我说了。

2. 安装apache.
sudo apt-get install apache2

3. 安装tomcat。
为了安装多个tomcat,我是从tomcat的官方网站上直接拉下的xxx.tar.gz,解压的,如解到/usr/local/tomcat下

4. 安装mod-jk
sudo apt-get install libapache2-mod-jk

5. 配置apache主目录到tomcat主目录下
与windows下的一个httpd.conf文件不同,linux下apache的配置文件一大堆,在/etc/apache2下,由apache2.conf包含了其它很多的文件

改动apache的目录使其指向tomcat的webapps目录下,则要改动/etc/apache2/sites-available/default文件
将DocumentRoot 和下面的Directory下面的目录指向/usr/local/tomcat/webapps

6. 将jsp文件作为主文件
编辑/etc/apache2/apache2.conf,在DirectoryIndex index.html的后面加上一个 index.jsp

7. 设置链接
建立一个workers.properties文件
touch /etc/apache2/workers.properties
编辑它,加入下面内容

workers.tomcat_home=/usr/lib/tomcat
workers.java_home=/usr/lib/jdk
ps=/
worker.list=worker1

worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1

其中,worker.tomcat_home是tomcat的安装目录,workers.java_home是java的目录,如果系统已经设置了JAVA_HOME或是JRE_HOME这一行可以省略。

8. 设置mod-jk
编辑/etc/apache2/mods-available/jk.load
加上下面内容

LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so

# Where to find workers.properties
JkWorkersFile /etc/apache2/workers.properties

# Where to put jk logs
JkLogFile /var/log/apache2/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel info

# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"

# Send servlet for context / jsp-examples to worker named worker1
JkMount /jsp-examples worker1
# Send JSPs for context /jsp-examples/* to worker named worker1
JkMount /jsp-examples/* worker1
JkUnMount /*.jpg worker1

共中可以有钓竿JkMount和JkUnMount设置,JkMount是什么目录下的文件或文件类型要经过tomcat处理,JkUnMount则是过滤掉,直接由apache处理这样要根据你的web应用的情况进行配置

9. 重启tomcat和apache就行了....