#tomcat4只支持servlet2.2/jsp1.2
#推荐使用tomcat5.0.29,支持servlet2.4/jsp2.0
参考网站:http://ezine.daemonnews.org/200203/tomcat-jakarta.html
一、安装JAVA (FreeBSD系统下)
由于版权的问题,以下的包要先下载放到/usr/ports/distfiles下(patch具体的下载路径我忘记了,make的时候会有出错提示的,看出错提示就知道去哪里下载了,其余的都在sun的网站下载)
bsd-jdk14-patches-6.tar.gz
j2sdk-1_4_2-bin-scsl.zip
j2sdk-1_4_2-src-scsl.zip
j2sdk-1_4_2_05-linux-i586.bin
然后,cd /usr/ports/java/jdk14, make
这样会先安装/usr/ports/emulators/linux_base的ports,中间会提示要进行如下的操作
# kldload linprocfs
# mount -t linprocfs /compat/linux/proc
# setenv ALT_BOOTDIR /usr/local/linux-sun-jdk1.4.2_04/bin/java
# setenv ALT_JAVAWS_BOOTDIR /usr/local/linux-sun-jdk1.4.2_04/bin/java
# make
7个多小时后,终于装完了。将上面的setenv修改加入.cshrc和在/etc/fstab 加入
linproc /compat/linux/proc linprocfs rw 0 0
设置java环境变量:修改~/.cshrc(csh)或~/.bashrc(bsh),加入
setenv ALT_BOOTDIR /usr/local/linux-sun-jdk1.4.2/bin/java
setenv ALT_JAVAWS_BOOTDIR /usr/local/linux-sun-jdk1.4.2/bin/java
setenv JAVA_HOME /usr/local/jdk1.4.2
setenv CLASSPATH .:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/jre:$JAVA_HOME/bin
set path = (/usr/local/jdk1.4.2/bin /usr/local/jdk1.4.2/jre/bin)应该加到原有PATH的后面.
注:根据不同的系统,设置环境变量不同,在Linux下用export,UNIX下用setenv或set.
然后,重新登录,测试一下
$ java -version
输出正确的版本号,这就成功了。
二、安装Tomcat:
1、download Jakarta-Tomcat from http://jakarta.apache.org. Get the binary to start. Remember this is Java so the binary will work on FreeBSD.
解压文件:
tar -xvzf jakarta-tomcat-4.1.31.tar.gz
2、设置环境变量:
3、Free# vi .cshrc(csh用户环境变量设置)或者vi .profile(bsh用户环境变量设置)
setenv CLASSPATH .:/usr/local/jakarta-tomcat-4.1.31/common/lib/servlet.jar
setenv CATALINA_HOME /usr/local/jakarta-tomcat-4.1.31
要想设置系统环境变量到以下目录vi /etc/csh.login(csh系统环境变量设置),vi /etc/profile(bsh系统环境变量设置)
若是b_shell,启动/etc/profile和用户根目录下的 .profile文件(若是c_shell,则执行/etc/csh.login和用户根目录下的.cshrc和.login;若是korn shell,则会执行环境变量ENV所定义的文件)配置用户环境变量。
要查看用户使用何种shell,用这个命令:finger "用户"
三、Tomcat Running
Test the installation by changing directory to the jakarta-tomcat-4.0.2/bin and type:
./startup.sh
If you get a bad interpreter error, you need to run
chmod +x *.sh
(For production machines set executable permissions accordingly.)
Point your browser to:
You should see the Tomcat home page with several examples of both Servlets and Java Server Pages. As I mentioned earlier, Servlets and JSPs do not require a Java capable browser.
To stop Tomcat just run:
/usr/local/jakarta-tomcat-4.1.31/bin/shutdown.sh
四、整合及涉及到的4个配置文件
Apache 的 httpd.conf 和 workers.properties (创建)
Tomcat 的 server.xml 和 jk2.properties (不过这两个文件,我没改过也成功了)
1、mod_jk的配置(tomcat与apache整合的包)二进制包安装,可以直接使用
所需软件包:mod_jk-apache2.tbz(主要就是需要mod_jk.so的动态连接库文件,见下1)
1)、把mod_jk-apache2/libexec/apache2/mod_jk.so文件考到/usr/local/apache2/modules/下
2)、在以下目录建一个文件:workers.properties
#cd /usr/local/apache2/conf
#vi workers.properties
workers.tomcat_home=/usr/local/jakarta-tomcat-4.1.31
workers.java_home=/usr/local/jdk1.4.2
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
#################################################3
[uri:/*.jsp]
worker=ajp13:localhost:8009
[uri:/examples/*]
worker=ajp13:localhost:8009
[uri:/admin/*]
worker=ajp13:localhost:8009
[uri:/admin/servlet/*]
worker=ajp13:localhost:8009
[uri:/tomcat-docs/*]
worker=ajp13:localhost:8009
[uri:/manager/*]
worker=ajp13:localhost:8009
[uri:/webdav/*]
worker=ajp13:localhost:8009
[uri:/www/*]
worker=ajp13:localhost:8009
################################################
2、apache的配置
#vi httpd.conf
修改/usr/local/apache2/conf/httpd.conf
把DocumentRoot "/usr/local/apache2/htdocs"
改为:
DocumentRoot "/usr/local/tomcat4/webapps/ROOT"
把#<Directory "/usr/local/apache2/htdocs">
改为:
<Directory "/usr/local/tomcat4/webapps/ROOT/">
并在DirectoryIndex index.html index.html.var后加上index.jsp
在LoadModule处增加下面一行
LoadModule jk_module modules/mod_jk.so
#############################################
另外要增加mod_jk的配置文件
<IfModule mod_jk.c>
JkWorkersFile /usr/local/apache2/conf/workers.properties
JkLogFile /var/log/httpd/mod_jk.log
JkLogLevel error
</IfModule>
增加要通过mod_jk匹配的文件类型
<IfModule mod_jk.c>
JkMount /*.jsp ajp13
JkMount /*.do ajp13
JkMount /servlet/* ajp13
</IfModule>
#############################################
或者在:# vi /usr/local/tomcat4/conf/jk2.properties
handler.list=apr,channelSocket,request,shm
channelSocket.port=8009
#############################################
或
五、源码安装
#cd /usr/local/
#tar -xzvf jakarta-tomcat-connectors-jk2-2.0.2-src.tar.gz
#cd jakarta-tomcat-connectors-jk2-2.0.2-src
#cd jk/native2
#chmod 755 buildconf.sh
#./configure --with-apxs2=/usr/local/apache/bin/apxs --enable-EAPI
#make
#make install
#如果make install 不成功需要手工发布mod_jk2.so
#cd /usr/local/src/jakarta-tomcat-connectors-jk2-2.0.2-src/jk/build/jk2/apache2
#cp *.so /usr/local/apache/modules/
要想改tomcat的默认根文档,用vi打开jakarta-tomcat-4.1.31/conf/server.xml, 然后查找:“docBase="/usr/local/jakarta-tomcat- 4.1.31/webapps/ROOT"”,用你想用的根文档路径替换这个路径,然后重启tomcat,就OK了。