linux中tomcat和apache的整合

<!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } -->

Linux Tomcat6+Apache2.2 的整合

该过程在 CentOS 5.2 上测试通过。

相关软件
1) jdk1.6.x(jdk1.5x)
2) tomcat6.x
3) apache2.x
4) jk_mod1.2.x
由于安装过程中可能会有权限问题,所以推荐以 root 运行安装及配置程序。

(本文中忽略了授权问题,如果因为权限而无法执行,请首先对程序修改权限。)

1. JDK
安装
1.1
假设系统中的 jdk 已经安装到了 /usr/local/java 下,根据系统的不同多数系统已经自带了 jdk

1.2
配置 Java 环境变量
编辑 /etc/profile 文件,添加如下内容:

JAVA_HOME=/usr/local/java

PATH=$PATH:/$JAVA_HOME/bin

CLASSPATH=.:$JAVA_HOME/lib

export JAVA_HOME PATH CLASSPATH


2. Tomcat
安装
2.1
安装 tomcat

$ tar -zxvf apache-tomcat-6.0.16.tar.gz
$ vi /usr/local/tomcat/bin/catalina.sh
   第46 行加入此句

JAVA_HOME=/usr/local/java/
2.2
配置环境变量
编辑 /etc/profile ,添加 TOMCAT_HOME

TOMCAT_HOME=/usr/local/tomcat

同时在 export 语句中加入 TOMCAT_HOME
注:
最好将启动命令加入 /etc/rc.d/rc.local 中,以便系统启动时将之启动。
tomcat
默认使用 8080 端口,如果系统中有其它软件占用了该端口,请先停止。
3.
测试安装
3.1
环境变量的测试:
$ echo $JAVA_HOME

/home/work

$ echo $PATH

。。。。。。。
3.2 tomcat
安装测试
$ /usr/local/tomcat/bin/catalina.sh start
在浏览器地址栏输入 http://localhost:8080
如果能看到 tomcat 的欢迎页表示安装成功。

4. Apache
安装配置

4.1 安装 apache

假定 apache 的安装文件已经拷贝到了 /usr/local
$ tar -zxvf httpd-2.2.9.tar.gz
$ cd httpd-2.2.9
$ ./configure --prefix=/usr/local/apache --enable-mods-shared=all
$ make
$ make install
$ cd /usr/local/apache
# su root
$ bin/apachectl start
(编译安装— enable-so-mods-shared=all 新版的安装文档里没有提示需要加载, 直接 ./configure --prefix=/usr/local/apache 即可)
安装过程要几分钟时间,完成后,切换到 root 账号启动 Apache
在地址栏输入 http://localhost/ ,看到 it works 欢迎页表示成功
(可以参考 apache 的官方文档: http://httpd.apache.org/docs/2.2/install.html

.2 配置 apache/conf/http.conf

打开注释配置语言,可以设置默认中文
Inclucde conf/extra/http-languages.conf

extra/httpd-languages.conf 增加如下代码,这样默认就是中文了,比如 Ajax 请求数据,都不用定义 encoding 也能正常支持中文了。
DefaultLanguage zh-CN

AddDefaultCharset gb2312


打开浏览器输入http://localhost/ 来测试apache 的安装。
5.
安装 mod_jk.so

5.1 拷贝 mod_jk

a) 如果下载的是源文件,需要编译后再配置。也很简单,如下:
$ tar -zxvf tomcat-connectors-1.2.26-src.tar.gz
首先解压缩,查看解压后的 BUILD.txt 文件,并按说明去做
$ cd tomcat-connectors-1.2.26-src/native/
$ ./configure --with-apxs=/usr/local/apache/bin/apxs
apxs 的路径是 apache 目录的 bin/apxs

$ make
$ su -c 'make install'
按提示输入 root 密码,执行安装。可以看见含有有如下提示:
Libraries have been installed in:
/usr/local/apache/modules

$ chmod 755 /home/work/usr/local/apache2/modules/mod_jk.so

$ cd /usr/local/apache/modules/
进入到 Apache 的模块目录下,给 mod_jk 授权,不更改用户组也没有关系
$ su -c 'chgrp -R work mod_jk.so'
$ su -c 'chown -R work mod_jk.so'
$ chmod 777 mod_jk.so

apache/conf 中新建 mod_jk.conf workers.properties 文件。

编辑 mod_jk.conf 文件,把 mod_jk.so 装载进来
LoadModule jk_module modules/mod_jk.so


b) 如果直接下载的二进制文件

把文件 mod_jk.so 复制到 apache/modules 目录下。

apache/conf 目录下新建 mod_jk.conf workers.properties 文件。
mod_jk.conf jk 的配置文件,包括装载模块和日志信息以及指定解析的工作器和目录, workers.properties Tomcat wokers 的配置文件)

5.2 mod_jk.conf 的内容如下:

-------------------------------------------------
#
加载 jk 模块,名字要对应
LoadModule jk_module modules/mod_jk.so

# 加载刚才新建的 workers.properties 文件

JkWorkersFile conf/workers.properties

# Jk 日志文件

JkLogFile logs/mod_jk.log

# Jk 日志的级别,参数有 [debug/error/info]

JkShmFile logs/mod_jk.shm

JkLogLevel info

# Jk 日志的数据格式

JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

# Jk 的一些配置选项 indicate to send SSL KEY SIZE,

JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

# Jk 请求日志的格式

JkRequestLogFormat "%w %V %T"



#JSP do Servlet 文件交由 Tomcat 处理

JkMount /servlet/* ajp13

JkMount /*.jsp ajp13

JkMount /*.do ajp13

# JkMount 表示使用 Tomcat 来解析, JkUnMount 则相反

 

# JkMount /test/* ajp13 表示把 test 目录下的所有文件以及子目录都交给 Tomcat 处理

# 一般是 jsp servlet 程序交由 tomcat 处理就可以了,静态文件图片等仍然由 Apache 处理

# 你可以根据需要来设定,比如只把 test/*.jsp 交给 Tomcat 处理 # JkMount /test/*.jsp ajp13

 

#JkAutoAlias /home/work/dev/test/*

# 该文件夹下所有的静态文件自动交由 Apache 处理

JkMount /test/servlet/* ajp13

#/test/servlet/ 下所有的文件也交给 Tomcat 处理

----------------------------------------------------------

5.3 httpd.conf 中添加如下代码,把 mod_jk.conf 文件装来进来:

Include conf/mod_jk.conf


5.4 workers.properties 文件内容如下:

---------------------

workers.tomcat_home=/usr/local/tomcat6/

workers.java_home=/usr/java/jdk1.5.0/

ps=\

worker.list=ajp13

worker.ajp13.port=8009

worker.ajp13.host=localhost

worker.ajp13.type=ajp13

worker.ajp13.lbfactor=1

---------------------

5.5 编辑 httpd.conf ,增加对 jsp 的支持,并重新设定主页目录,使之与 tomcat 的主目录相同。
LoadModule jk2_module "modules/mod_jk.so"
DocumentRoot "/usr/local/tomcat/webapps/ROOT/"
注意:要设置 /usr/local/tomcat/webapps/ROOT/ 的访问权限
chmod 755 /usr/local/tomcat/webapps/ROOT

6. 测试


/usr/local/tomcat/webapps/ROOT/ 创建一个 jsp 文件,如: test.jsp 内容如下:
The time is: <%=new java.util.Date() %>

在浏览器中测试
http://localhost /test.jsp
如果正确显示 The time is : Mon Dec 01 19:44:06 CST 2008 系统当前时间,成功。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值