linux下Tomcat 5.0.18 与 Apache 2 安装/集成/配置
linux下Tomcat 5.0.18 与 Apache 2 安装/集成/配置
1,首先apache2。我们使用源代码编译安装:
1.1, 从http://archive.apache.org/dist/httpd/下载httpd-2.0.50.tar.gz,放至Linux服务器中;
1.2, tar zxvf httpd-2.0.50.tar.gz,将包解出来;
./configure -prefix=/usr/local/apache2 -enable-so
make
make install
2,安装JDK。在java.sun.com上下载J2SDK1.4版,安装,并在/etc/profile中加入以下几句,以设置JAVA_HOME和classpath环境变量:
JAVA_HOME=/root/jdk_nb/jdk;export $JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
3,安装tomcat。在http://archive.apache.org/dist/jakarta/tomcat-5/archive/v5.0.18/bin/上下载
jakarta-tomcat-5.0.18.tar.gz,放至Linux服务器中:
3.1, tar zxvf jakarta-tomcat-5.0.18.tar.gz
在/etc/profile中加入TOMCAT_HOME环境变量;
TOMCAT_HOMT/bin/catalina.sh start直接就可以启动使用。
4,编译和设置mod_jk2。在http://archive.apache.org/dist/jakarta/tomcat-connectors/jk2/中下载jakarta-tomcat-connectors-jk2-src-current.tar.gz,放至LINUX服务器上:
tar zxvf jakarta-tomcat-connectors-jk2-src-current.tar.gz
cd jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2
./buildconf.sh
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-java-home=/root/jdk_nb/jdk(具体路径根据JDK安装路径调整)
make jk2-build-apxs
cd server/apache2
make -f Makefile.apxs install
成功执行完这几步骤之后,mod_jk2已经装好,接下来是配置阶段。
5,Apache配置。打开apache2/conf/httpd.conf:
5.1,更改listen端口,与自己的IP匹配,并加入一句,以载入mod_jk2模块:
Listen 192.168.1.11:80
LoadModule jk2_module modules/mod_jk2.so
5.2,将AddDefaultCharset ISO-8859-1一句注释掉,以根除可能的中文乱码问题;
5.3,在apache2/conf/新写一文件workers2.properties,内容如下:
#---- worker2.properties
[logger.apache2]
level=DEBUG
# Shared memory handling. Needs to be set.
[shm]
file=/usr/local/apache2/logs/shm.file
size=1048576
# Example socket channel, explicitly set port and host.
[channel.socket:localhost:8009]
tomcatId=localhost:8009
port=8009
host=127.0.0.1
# define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009
#[status:status]
# Uri mapping
#[uri:/jkstatus/*]
#group=status:status
#[uri:/jsp-examples/*]
#group=ajp13:localhost:8009
#[uri:/servlets-examples/*]
#group=ajp13:localhost:8009
#[uri:/javaapp/*]
#group=ajp13:localhost:8009
#[uri:www.home.net/*.jsp]
#worker=ajp13:localhost:8009
#[uri:10.0.0.10/*]
#worker=ajp13:localhost:8009
#---- end of workers2.properties
当然,也可以删除其中的注释符使其中的uri和worker的配置生效,现在不用这种方式配置是因为找到一个更好的方法:在httpd.conf里面配置:
加入一段VirtualHost在apache2/conf/httpd.conf:
ServerName localhost
DocumentRoot /sol/people/web/admin/
DirectoryIndex index.htm index.html default.htm index.php index.jsp
JkUriSet worker ajp13:localhost:8009
ErrorLog logs/SportOnline_1-err_log
CustomLog logs/SportOnline_1-aclearcase/" target="_blank" >cc_log common
在VirtualHost之前,加入以下代码,可以从全局避免用户用apache访问WEB-INF目录:
Order allow,deny
Deny from all
6,Tomcat配置。打开tomcat/conf/server.xml,确认以下一段代码没有被注释掉,以使apache能够将jsp请求通过8009端口转至tomcat处理:
还请确认tomcat的服务端口和apache的服务端口不冲突。本例中apache使用80端口,tomcat使用8080端口。
7,如果linux服务器已安装的有apache服务器,为使不影响我们的apache,需要更改/etc/rc.d/init.d/httpd这个启动脚本文件:
vi /etc/rc.d/init.d/httpd
更改以下三个属性:
将apachectl=/usr/sbin/apachectl改为:
apachectl=/usr/local/apache2/bin/apachectl
将httpd=/usr/sbin/httpd改为:
httpd=/usr/local/apache2/bin/httpd
将CONFFILE=/etc/httpd/conf/httpd.conf改为:
CONFFILE=/usr/local/apache2/conf/httpd.conf
完成之后,可以通过service httpd restart重新启动我们需要的apache服务。
================================================================
这样就可以为每个不同的虚拟主机分别指定使用或者不使用jsp功能。
配置完成。