QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1124|回复: 1

红旗DC4.1上tomcat与apache的整和

[复制链接]
发表于 2005-7-8 18:06:37 | 显示全部楼层 |阅读模式
红旗DC4.1上tomcat与apache的整和

fan3838
[email protected]
20050708
红旗DC4.1
apache 2.0.46 红旗自带
tomcat 5.5.9  最新
jk     1.2.10 (jk2在DC4.1上面编译没有通过,被迫使用jk)

在红旗DC4.1上面,只要启动apache,那么php就自动支持了。但是想支持jsp的话,需要安装tomcat。
tomcat的选择当然是最新版本5.5.9
其实tomcat和apache的整合并不难,在网上有很多的教程,但是我所遇到的问题是:整合模块jk2编译通不过。
我试图通过修改原文件,但是能力有限,还是没有让jk2编译通过,被迫使用了jk。
当然jk并不比jk2逊色,只不过大版本低而已,功能万全实现。

1、apache web server
红旗DC4.1自带的apache,并且红旗自带了apache的图形配置工具(rfapache),对新手非常适用,方便简洁
apache默认主目录为/var/www/html/
2、JAVA
从sun上载最新jdk,或者JRE也行。我用的红旗桌面4.1PLUS带的jre-1.5b2-1.i386.rpm
rpm -ivh jre-1.5b2-1.i386.rpm --force --nodeps
如果是用jrockit或者其他,那么需要你修改/etc/profile设置环境变量JAVA_HOME,JAVA_BASE,PATH,CLASSPATH等等
最终效果是让系统有JAVA环境。
3、tomcat为最新jakarta-tomcat-5.5.9.tar.gz下载地址如下
http://apache.justdn.org/jakarta/tomcat-5/v5.5.9/bin/jakarta-tomcat-5.5.9.tar.gz
将其下载到/tmp目录下解压即可。tomcat是独立与apache的,所以即使你没有apache也照样可以让系统支持jsp。
[root@localhost tmp]#tar xvzf jakarta-tomcat-5.5.9.tar.gz -C /usr/local/
[root@localhost tmp]#mv /usr/local/jakarta-tomcat-5.5.9/ /urs/local/tomcat
[root@localhost tmp]#/usr/local/tomcar/bin/startup.sh
现在tomcat已经启动,你可以在浏览器上测试
http://localhost:8080
如果显示tomcat默认主页就说明成功
tomcat 5.5.9默认主目录为/usr/local/tomcat/webapps/ROOT/
4、tomcat与apache整和
我用的jk-1.2.10,下载地址如下:
http://apache.justdn.org/jakarta/tomcat-connectors/jk/source/jk-1.2.10/jakarta-tomcat-connectors-1.2.10-src.tar.gz
将其下载到/tmp目录下解压即可。(我没有用最新的jk2,因为jk2在红旗DC4.1上编译会出错,我一直搞不定,如果哪位有解决办法,希望告知。)
[root@localhost tmp]tar xvfz jakarta-tomcat-connectors-1.2.10-src.tar.gz
[root@localhost tmp]cd jakarta-tomcat-connectors-1.2.10-src/jk/native/
[root@localhost native]#./configure --with-apxs=/usr/sbin/apxs
[root@localhost native]#make
[root@localhost native]#cd apache-2.0/
[root@localhost apache-2.0]#ls mod_jk.so
[root@localhost apache-2.0]#/usr/sbin/apxs -n jk2 -i mod_jk.so
(或者直接将mod_jk.so拷贝到/usr/lib/httpd/modules)
([root@localhost apache-2.0]#cp mod_jk.so /usr/lib/httpd/modules/)
编辑apache的配置文件/etc/httpd/conf/httpd.conf,在文件末尾添加如下内容:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "/etc/httpd/conf/workers.properties"
JkLogFile "/var/log/httpd/mod_jk2.log"
JkLogLevel debug
JkMount /*.jsp worker1
JkMount /helloapp/* worker1
新建此文件/etc/httpd/conf/workers.properties,内容如下
ps=/
#指定文件路径分割符
worker.list=worker1
worker.worker1.port=8009
#工作端口,若没占用则不用修改
worker.worker1.host=localhost
#Tomcat服务器的地址
worker.worker1.type=ajp13
#类型
worker.worker1.lbfactor=1
#负载平衡因数
重新启动apache和tomcat
整和完毕,如下测试:
http://localhost   显示主页
http://localhost/index.jsp  显示tomcat默认主页
5、在/usr/local/tomcat/webapps/ROOT/下新建一个a.jsp文件,然后访问看是否成功
http://localhost/a.jsp
我的是没有问题的。
其他的设置就自己摸索吧。


以下是我jk2时的错误提示。在网上我也看到有其他人遇到跟我一模一样的错误,但是没有人解决。
[root@localhost native2]#./configure --with-apxs2=/usr/sbin/apxs
[root@localhost native2]# make
list=' server/apache2'; \
for i in $list; do \
        echo "Making $target in $i"; \
        if test "$i" != "."; then \
        (cd $i && make) || exit 1; \
fi; \
done;
Making  in server/apache2
make[1]: Entering directory `/tmp/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/server/apache2'
mkdir -p ../../../build/jk2/apache2/usr/lib/httpd/modules
/bin/sh /usr/bin/libtool --silent  --mode=compile gcc  -O2 -g -march=i386 -mcpu=i686 -DSSL_EXPERIMENTAL_ENGINE -I/usr/kerberos/include -pthread    -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE   -I../../include -I/usr/include/httpd -I/var/tmp/mlbld.12950/rpm/BUILD/httpd-2.0.46/prefork/srclib/apr-util/include /var/tmp/mlbld.12950/rpm/BUILD/httpd-2.0.46/srclib/apr-util/include -I/var/tmp/mlbld.12950/rpm/BUILD/httpd-2.0.46/prefork/srclib/apr/include /var/tmp/mlbld.12950/rpm/BUILD/httpd-2.0.46/srclib/apr/include   -DCHUNK_SIZE=4096 -DUSE_APACHE_MD5   -c ../../common/jk_channel_apr_socket.c -o ../../../build/jk2/apache2/jk_channel_apr_socket.lo
gcc: cannot specify -o with -c or -S and multiple compilations
make[1]: *** [../../../build/jk2/apache2/jk_channel_apr_socket.lo] Error 1
make[1]: Leaving directory `/tmp/jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/server/apache2'
make: *** [jk2-build] Error 1
[root@localhost native2]# ls
发表于 2005-12-10 10:36:06 | 显示全部楼层
jk2已经deprecated了。
大家用jk1.2吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-3 00:23 , Processed in 0.043493 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表