分享
 
 
 

浅谈apache和tomcat在linux下的整合

王朝system·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

surfingbean写著 '花了几天时间摸索apache和tomcat在linux下的整合问题,略有收获.写出来与大家共享,希望对您有所启发.

网上已经有很多类似的文章,这里着重解释一些初学者难以理解的问题,以及谈一谈自己的体会.

花了几天时间摸索apache和tomcat在linux下的整合问题,略有收获.写出来与大家共享,希望对您有所启发.

网上已经有很多类似的文章,这里着重解释一些初学者难以理解的问题,以及谈一谈自己的体会.

1.准备文件并解压缩至/temp/:

apr-0.9.1.tar.gz

httpd-2.0.40.tar.gz

j2sdk-1_4_1_02-linux-i586-rpm.bin(直接运行)

jakarta-tomcat-4.1.18.tar.gz

jakarta-tomcat-connectors-4.1.27-src.tar.gz

注; 这些文件在其官方网页上下载较慢,但都可以在天网上找到.

然后将生成的jakarta-tomcat-4.1.18/ 和 jakarta-tomcat-connectors-4.1.27-src/ 拷贝至/opt/下

#cp -r jakarta-tomcat-4.1.18/ /opt/

#cp -r jakarta-tomcat-connectors-4.1.27-src/ /opt/

2.安装JDK(java development Kit)

#rpm -ivh j2sdk-1_4_1_02-fcs-linux-i586.rpm

默认安装目录是/usr/java/j2sdk1.4.1_02/

3.设定环境变量:

在/etc/profile中,加入:

#java environment variable settings

JAVA_HOME=/usr/java/j2sdk1.4.1_02

export JAVA_HOME

CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export CLASSPATH

CATALINA_BASE=/opt/jakarta-tomcat-4.1.18

export CATALINA_BASE

CATALINA_HOME=/opt/jakarta-tomcat-4.1.18

export CATALINA_HOME

PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

需重启才能生效.

测试JDK:运行

# java -version

# javac -version

看到版本信息则JDK安装成功

测试tomcat:运行

# /opt/jakarta-tomcat-4.1.18/bin/startup.sh

在浏览器中输入: http://ip地址:8080

能看到tomcat页则安装成功.

4.安装apache

进入apache的解压目录 /temp/httpd-2.0.40/

config.layout文件确定了各种风格的apache的各安装目录. 这里将选择RedHat. 建议将文件中RedHat的prefix改为/etc/httpd .

# ./configure --enable-layout=RedHat --enable-module=so

-- 生成makefile 文件. 这里选择了config.layout文件中的RedHat设置. 并采用DSO(Dynamic Shared Object)方式编译

# make

-- 编译

# make install

-- 安装

测试apache:运行

# /etc/httpd/sbin/apachectl start

在浏览器中输入: http://ip地址

能正确显示则安装成功.

5.编译Jakarta-Tomcat-connectors

# cp -r /temp/apr-0.9.1/ /opt/jakarta-tomcat-connectors-4.1.27-src/webapp/apr

-- 将apr-0.9.1/目录拷贝并改名

# cd /opt/jakarta-tomcat-connectors-4.1.27-src/webapp

-- 进入目录

# ./support/buildconf.sh

-- 生成编译配置文件

# ./configure --with-apxs=/etc/httpd/sbin/apxs

-- 生成Makefile编译文件.这里指明了apxs文件的位置.它可能根据apache安装目录的不同而不同.

# make

-- 编译生成mod_webapp.so

# cp apache-2.0/mod_webapp.so /etc/httpd/lib/apache/

-- 将mod_webapp.so 拷贝. 这里的目的目录其实可以任意指定,但必需与以后httpd.conf中的设置对应.

这里是一个习惯的位置.

6.修改/etc/httpd/conf/httpd.conf

1)在# Dynamic Shared Object (DSO) Support之后,添加如下内容(第230行左右):

LoadModule webapp_module /etc/httpd/lib/apache/mod_webapp.so

-- 加载我们刚刚编译的模块mod_webapp

2)在文件尾部添加如下内容:

WebAppConnection warpConnection warp localhost:8008

WebAppDeploy examples warpConnection /examples/

--建立于tomcat的关联, 并设定虚拟目录 /examples/

如果计算机有自己的域名(在/etc/hosts文件中可以设),就用它代替localhost,并在ServerName处

(大概在290行)添加

ServerName your_domain_name:80

3)为了让apache更好支持中文,将AddDefaultCharset ISO-8859-1改为

AddDefaultCharset off

4)语法检查:运行

# /etc/httpd/sbin/apachectl configtest

如果显示Syntax OK, 则语法正确

否则根据提示查看httpd.conf的修改是否正确

5)修改/opt/jakarta-tomcat-4.1.18/conf/server.xml文件

默认情况下与8008端口相关的信息是被注释掉了,需要删掉注释的语句.

如果是比tomcat4.1.18更高的版本,里面可能没有这不分内容.那就将如下文本拷贝到文件最后

在最后一行 之前:

as its servlet container. Please read the README.txt file coming with

the WebApp Module distribution on how to build it.

(Or check out the "jakarta-tomcat-connectors/webapp" CVS repository)

To configure the Apache side, you must ensure that you have the

"ServerName" and "Port" directives defined in "httpd.conf". Then,

lines like these to the bottom of your "httpd.conf" file:

LoadModule webapp_module libexec/mod_webapp.so

WebAppConnection warpConnection warp localhost:8008

WebAppDeploy examples warpConnection /examples/

The next time you restart Apache (after restarting Tomcat, if needed)

the connection will be established, and all applications you make

visible via "WebAppDeploy" directives can be accessed through Apache.

--

port="8008" minProcessors="5" maxProcessors="75"

enableLookups="true" appBase="webapps"

acceptCount="10" debug="0"/>

name="Apache" debug="0">

prefix="apache_log." suffix=".txt"

timestamp="true"/>

7.整体测试

运行:

# /opt/jakarta-tomcat-4.1.18/bin/shutdown.sh

# /opt/jakarta-tomcat-4.1.18/bin/startup.sh

# /etc/httpd/sbin/apachectl restart

在浏览器中输入如下地址

http://服务器IP/examples/jsp/index.html,如果能够显示正常的网页,则安装成功

然后选择几个jsp的例子,出现动态网页的话,安装就成功了.

8.几点补充:

1)apache和tomcat的整合令人感觉并不完善.jsp动态网页只能通过apache的虚拟目录访问, 即不能正常访问

apache默认目录下的动态网页.哪位高人知道解决方法,还望不吝赐教.

2)如果要在计算机启动的时候就运行httpd服务,可以在/etc/rc.d/rc.local文件中加入这几行:

#start apache

/etc/httpd/sbin/apachectl start

#start tomcat

/opt/jakarta-tomcat-4.1.18/bin/startup.sh

3)为了接收外部访问,别忘了打开防火墙http的端口:

# setup

-> Firewall Configuration

4)在实验和撰写本文过程中,参考了很多大牛们的文章,这里一并表示感谢.文中难免有谬误疏漏之处,还望各?

批评指正.

surfingbean

surfingbean@yahoo.com

'

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有