说明:本方案已经在redhat8/9,rhel2.1/3,fedora1上测试通过,欢迎大家在其他系统上测试后反馈结果。
各种版本的安装步骤都基本相同,区别只在于httpd和mod_jk的版本不同,后面我附了各种版本mod_jk的说明,大家可以去作者主页下载文中涉及的mod_jk的rpm安装包。
(这里实在不好排版,还是建议大家去原网址去看)
下面是以rhel3为例。
1.安装和tomcat
./j2sdk1.4.2_04.bin
cp -R j2sdk1.4.2_04 /var/jdk
2.安装Tomcat4.1.29,将下载下来的tomcat1.4.29.tar.gz解压拷贝到相应的目录即可
tar xvzf tomcat4.1.29.tar.gz
cp tomcat4.1.29 /var/tomcat4
3.设置环境变量
export JAVA_HOME=/var/jdk
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CATALINA_HOME=/var/tomcat4
可以在/etc/profile.d/下面建立一个java.sh来设置环境变量,免得以后每次启动后都要重新设置
vi /etc/profile.d/java.sh
java.sh的内容如下:
代码:
#这里改为你的jdk路径
JAVA_HOME=/var/jdk
#这里改为你的tomcat安装路径,不过似乎不设也可以
CATALINA_HOME=/var/tomcat4
#设置PATH,注意将jdk的bin路径加入,也可以将tomcat的bin目录加入
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$CATALINA_HOME/bin
export JAVA_HOME CATALINA_HOME PATH
.
将java.sh改为可执行
chmod 755 /etc/profile.d/java.sh
4.安装httpd,这个都可以使用系统自带的,也可以去www.apache.org下载最新版的rpm包来警醒安装,我装的是rhel自带的2.0.46
5.安装mod_jk,我装的是mod_jk-tomcat4.1.24-fc1.i386.rpm,虽然是for fedora1的,但在rhel3下也可以正常使用,这个在后面会有说明.
注意,只有将jdk和tomcat装在特定的目录下mod_jk才能检测到,所以这里我们强制安装
rpm -i --nodeps mod_jk.rpm
好了,现在需要的软件都安装完了,剩下的就是配置的工作.
mod_jk.rpm除了安装mod_jk.so以外,还会在/etc/httpd/conf和/etc/httpd/conf.d下面分别增加两个文件mod_jk.properties和mod_jk.conf
下面我们分别进行配置
5.mod_jk.properties的设置
cd /etc/httpd/conf/
vi mod_jk.properties
内容如下
代码:
#修改workers.tomcat_home为tomcat的安装目录
workers.tomcat_home=/var/tomcat4
#workers.java_home为jdk的安装目录
workers.java_home=/var/jdk
worker.list=ajp13
#注意,有的版本的mod_jk里这个端口默认是8109,要自己改为8009
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
6.mod_jk.conf的配置
这个文件主要是使httpd正确的加载mod_jk.so并匹配jsp文件,另外我们还要设置index.jsp或default.jsp为httpd每个目录的默认index文件.
vi /etc/httpd/conf.d/mod_jk.conf
内容如下
#加载mod_jk
LoadModule jk_module modules/mod_jk.so
#配置
JkWorkersFile conf/mod_jk.properties
JkLogFile logs/mod_jk
JkLogLevel warning
#文件类型匹配
JkMount /*.jsp ajp13
JkMount /*.do ajp13
JkMount /servlet/* ajp13
#设置默认索引页
DirectoryIndex index.jsp
7.对httpd进行配置,详情可参看关于httpd配置的相关教程,我们这里只需要设置httpd默认语言为简体中文
AddDefaultCharset GB2312
并将将tomcat和http的根目录(或虚拟主机的根目录)设为相同目录
8.启动tomcat,apache看看.
一点经验:
1. 关于mod_jk
mod_jk一般都是只跟httpd版本有关,跟操作系统甚至tomcat版本关系都不是很大,一般tomcat4下的都可以通用。
根据这几天的经验,这几个版本的mod_jk分别适用范围为
mod_jk-tomcat4.1.24-fc1.i386.rpm 适用于http2.0.46~2.0.52版本,即rhel3,fedora系列,再往后的版本现在还没发测试,2.0.52版本现在就是最新的了
mod_jk-tomcat4.1.18-rh80.i386.rpm 适用于httpd2.0.40版本,redhat8/9及其升级版本都可以用
mod_jk-tomcat4.1.24-rh80.i386.rpm 同上,只是要求tomcat的版本不同,但经过测试,tomcat4系列的都可以使用.
2.关于redhat8/9,rhel3,redhat8/9上的软件大部分都可以在rhel上正常运行,因此如果在rhel上找不到合适的软件的话可以拿redhat8/9上的软件来试试。