Tomcat 5 + Apache 2 + mod_jk 2 实现虚拟主机


[code:1:141851c2a4]#!/bin/sh
#
# Startup Script for Tomcat5
#
# chkconfig: 345 87 13
# description: Tomcat Daemon
# processname: jsVC
# pidfile: /var/run/jsVC.pid
# config:
#
# Source function library.
. /etc/rc.d/init.d/functions
#
prog=tomcat
#
# Small shell script to show how to start/stop Tomcat using jsVC
# If you want to have Tomcat running on port 80 please modify the server.xml
# file:
#
# <!-- Define a non-SSL HTTP/1.1 Connector on port 80 -->
# <Connector className="org.apache.catalina.connector.http.HttpConnector"
# port="80" minProcessors="5" maxProcessors="75"
# enableLookups="true" redirectPort="8443"
# acceptCount="10" debug="0" connectionTimeout="60000"/>
#
# You need a developement version of Tomcat (Apache Tomcat/4.1-dev)
#
# Adapt the following lines to your configuration

#设定自己的参数
Java_HOME=/usr/local/j2sdk1.4.2-04
CATALINA_HOME=/usr/local/jakarta-tomcat-5.0.19
DAEMON_HOME=$CATALINA_HOME/bin
#需要在系统中设定一个没有权限的
#用户来运行,这样比较安全
TOMCAT_USER=tomcat5
TMP_DIR=/var/tmp
CATALINA_OPTS=
CLASSPATH=\
$Java_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar

start(){
echo -n $"Starting $prog: "
#
# Start Tomcat
#
$DAEMON_HOME/jsVC-src/jsVC \
-user $TOMCAT_USER \
-home $Java_HOME \
-Dcatalina.home=$CATALINA_HOME \
-DJava.io.tmpdir=$TMP_DIR \
-outfile $CATALINA_HOME/logs/catalina.out \
-errfile &1 \
$CATALINA_OPTS \
-cp $CLASSPATH \
org.apache.catalina.startup.Bootstrap
#
# To get a verbose JVM
#-verbose \
# To get a debug of jsVC.
#-debug \
RETVAL=$?
[ $RETVAL = 0 ] && touch /var/lock/subsys/jsVC
[ $RETVAL = 0 ] && echo_success || echo_failure
echo
return $RETVAL
}
stop(){
echo -n $"Stopping $prog: "
#
# Stop Tomcat
#
PID=`cat /var/run/jsVC.pid`
kill $PID
RETVAL=$?
[ $RETVAL = 0 ] && rm /var/lock/subsys/jsVC
[ $RETVAL = 0 ] && echo_success || echo_failure
echo
return $RETVAL
}

case "$1" in
start)
start
;;

stop)
stop
;;

restart|reload)
stop
start
;;

*)
echo "Usage $0 start/stop"
exit 1;;
esac[/code:1:141851c2a4]
把这段代码保存为 /etc/rc.d/init.d/tomcat ,然后运行 [code:1:141851c2a4]chkconfig --add tomcat[/code:1:141851c2a4]即可把tomcat 添加为系统服务自动随系统启动了。这个脚本会在runlevel 3/4/5三种模式自动启动。注意这段脚本是为tomcat5创建的,如果你用tomcat4,则需要在另一个tomcat.sh的基础上修改。

5.编译和设置mod_jk
windows版本的mod_jk可以直接从 jakarta.apache.org 下载binary版本,linux下只好下载源代码编译了。从 http://jakarta.apache.org 下载 jakarta-tomcat-connectors-jk2-src-current.tar.gz 解压,然后 [code:1:141851c2a4]cd /jakarta-tomcat-connectors-jk2-2.0.2-src/jk/native2
./buildconf.sh[/code:1:141851c2a4]然后运行
[code:1:141851c2a4]./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-Java-home=/usr/local/j2sdk1.4.2-04[/code:1:141851c2a4]
(具体路径按照你实际的调整)
运行
[code:1:141851c2a4]make jk2-build-apxs
cd server/apache2
make -f Makefile.apxs install[/code:1:141851c2a4]
其实这个软件包本来有ant的配置文件,用ant编译可能会简单一些,但是要另外装ant,而且里面有些模块不是ant本身native的功能,还要为ant加装相应的功能模块,所以这里就略过,下次有时间再发一个ant的应用。

这样,你的mod_jk总算是装好了,现在开始进入配置阶段,其实,配置很简单了

6.设置虚拟主机
比如,我现在有虚拟主机 vhosts.vicp.net 希望把jsp和servlet都转到tomcat去,而其他的文件比如html页面,图片等等仍然用apache解析。
Tomcat设置:
修改 tomcat/conf/server.xml,在 <Engine></Engine>里面再增加一个<host/>,
[code:1:141851c2a4]<Host name="vhosts.vicp.net" debug="0"
appBase="/opt/jakarta-tomcat-4.1.12-LE-jdk14/webapps/struts-example"
共3页 首页 上一页 [1] [2] [3下一页 尾页>
字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z