1、安装Jdk,我将它安装到e:\jdk1.3下 
    2、安装Apache,安装它没有什么可说的,一路回车,不要忘了记住它的安装路径,我安装在E:\apache下。 
    3、安装Mod_jk,只要将下载的mod_jk.dll   copy到安装Apache目录下的libexec下就可以了。 
    4、安装Tomcat,下载的Win32版本是一个exe文件,没什么可说的,我将它安装在E:\Apache Tomcat 4.0这个目录下。 
    三、 配置 
    1、 首先,配置Jdk1.3,在你的环境变量里将JAVA_HOME设为E:\jdk1.3,具体做法为,WinNT/2000: 我的电脑?>属性?>高级?>环境变量,增加一个,值设为E:jdk1.3。如果为Win9X,那么手动修改Autoexec.bat增加Set JAVA_HOME=E:\jdk1.3,重启机器使设置生效。 
    2、 配置Apache,修改Httpd.conf,增加的内容如下: 
    LoadModule    jk_module  libexec/mod_jk.dll 
    AddModule     mod_jk.c 
    JkWorkersFile "E:\Apache Tomcat 4.0\conf\workers.properties" 
    JkLogFile     logs/mod_jk.log 
    JkLogLevel    info 
    JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " 
    JkMount /*.jsp ajp13 
    JkMount /servlet/* ajp13 
    对于上面的配置我简单介绍一下,JkWorkersFile使指定mod_jk工作所需要的工作文件,JkMount后面是将所有和jsp和servlet的请求通过Apj13的协议送给Tomcat,让Tomcat来处理。 
    3、 在E:\Apache Tomcat4.0\conf目录下建一个worker.properties,如果你要是用过Tomcat3.2以上,将它里面的workers.properties拷贝过来也可以,但是要做相应的修改,workers.properties内容如下:
# $Header: /home/cvs/jakarta-tomcat/src/etc/Attic/workers.properties,v 1.3.2.2 2000/10/16 01:59:22 larryi Exp $ 
# $Revision: 1.3.2.2 $ 
# $Date: 2000/10/16 01:59:22 $ 


# workers.properties - 

# This file provides jk derived plugins with with the needed information to 
# connect to the different tomcat workers. 

# As a general note, the characters $( and ) are used internally to define 
# macros. Do not use them in your own configuration!!! 

# Whenever you see a set of lines such as: 
# x=value 
# y=$(x)something 

# the final value for y will be valuesomething 

# Normaly all you will need to modify is the first properties, i.e. 
# workers.tomcat_home, workers.java_home and ps. Most of the configuration 
# is derived from these. 

# When you are done updating workers.tomcat_home, workers.java_home and ps 
# you should have 3 workers configured: 

# - An ajp12 worker that connects to localhost:8007 
# - An ajp13 worker that connects to localhost:8009 
# - A jni inprocess worker. 
# - A load balancer worker 

# However by default the plugins will only use the ajp12 worker. To have 
# the plugins use other workers you should modify the worker.list property. 

# # 
# workers.tomcat_home should point to the location where you 
# installed tomcat. This is where you have your conf, webapps and lib 
# directories. 

workers.tomcat_home=E:\Apache Tomcat 4.0 # 
# workers.java_home should point to your Java installation. Normally 
# you should have a bin and lib directories beneath it. 

workers.java_home=e:\jdk1.3 # 
# You should configure your environment slash... ps= on NT and / on UNIX 
# and maybe something different elsewhere. 

ps=\ 
# ps=/ # 
#------ ADVANCED MODE ------------------------------------------------ 
#--------------------------------------------------------------------- 
# # 
#------ DEFAULT worket list ------------------------------------------ 
#--------------------------------------------------------------------- 


# The workers that your plugins should create and work with 

worker.list=ajp12, ajp13 # 
#------ DEFAULT ajp12 WORKER DEFINITION ------------------------------ 
#--------------------------------------------------------------------- 
# # 
# Defining a worker named ajp12 and of type ajp12 
# Note that the name and the type do not have to match. 

worker.ajp12.port=8007 
worker.ajp12.host=localhost 
worker.ajp12.type=ajp12 

# Specifies the load balance factor when used with 
# a load balancing worker. 
# Note: 
#  ----> lbfactor must be > 0 
#  ----> Low lbfactor means less work done by the worker. 
worker.ajp12.lbfactor=1 # 
#------ DEFAULT ajp13 WORKER DEFINITION ------------------------------ 
#--------------------------------------------------------------------- 
# # 
# Defining a worker named ajp13 and of type ajp13 
# Note that the name and the type do not have to match. 

worker.ajp13.port=8009 
worker.ajp13.host=localhost 
worker.ajp13.type=ajp13 

# Specifies the load balance factor when used with 
# a load balancing worker. 
# Note: 
#  ----> lbfactor must be > 0 
#  ----> Low lbfactor means less work done by the worker. 
worker.ajp13.lbfactor=1 # 
# Specify the size of the open connection cache. 
#worker.ajp13.cachesize # 
#------ DEFAULT LOAD BALANCER WORKER DEFINITION ---------------------- 
#--------------------------------------------------------------------- 
# # 
# The loadbalancer (type lb) workers perform wighted round-robin 
# load balancing with sticky sessions. 
# Note: 
#  ----> If a worker dies, the load balancer will check its state 
#        once in a while. Until then all work is redirected to peer 
#        workers. 
worker.loadbalancer.type=lb 
worker.loadbalancer.balanced_workers=ajp12, ajp13 

#------ DEFAULT JNI WORKER DEFINITION--------------------------------- 
#--------------------------------------------------------------------- 
# # 
# Defining a worker named inprocess and of type jni 
# Note that the name and the type do not have to match. 

worker.inprocess.type=jni # 
#------ CLASSPATH DEFINITION ----------------------------------------- 
#--------------------------------------------------------------------- 
# # 
# Additional class path components. 

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes # 
# The XML parser provided with Tomcat 

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar 
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar # 
# Tomcat`s implementation 

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar 
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar 
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar # 
# Javac as available from Java2SE 

worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar # 
# Setting the command line for tomcat 
# Note: The cmd_line string may not contain spaces. 

worker.inprocess.cmd_line=-config 
worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml 
worker.inprocess.cmd_line=-home 
worker.inprocess.cmd_line=$(workers.tomcat_home) # 
# The JVM that we are about to use 

# This is for Java2 

worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll # 
# And this is for jdk1.1.X 

#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)bin$(ps)javai.dll 
# # 
# Setting the place for the stdout and stderr of tomcat 

worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout 
worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr # 
# Setting the tomcat.home Java property 

worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home) # 
# Java system properties 

# worker.inprocess.sysprops=java.compiler=NONE 
# worker.inprocess.sysprops=myprop=mypropvalue # 
# Additional path components. 

# worker.inprocess.ld_path=d:$(ps)SQLLIB$(ps)bin 
#     对于这个文件,要修改只有两个地方,一个是workers.tomcat_home,这是指定Tomcat工作的目录,另外一个是workers.java_home,这是指定Jdk的目录,大家可以做适当修改。 
    4、 配置Tomcat,这可是比较重要的一步,成败在此一举。 
打开Tomcat的核心配置文件E:\Apache Tomcat4.0\conf\server.xml 
修改如下: 
  将<!-- Define an AJP 1.3 Connector on port 8009 --> 
    <!-- 
    <Connector className="org.apache.ajp.tomcat4.Ajp13Connector" 
               port="8009" minProcessors="5" maxProcessors="75" 
               acceptCount="10" debug="0"/> 
      --> 
的<!--  --> 去掉,这句话熟悉XML的人都知道它是注释,因为默认的Tomcat4是没有启用Apj13的8009的端口即mod_jk所使用,修改后如下:  
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector" 
               port="8009" minProcessors="5" maxProcessors="75" 
               acceptCount="10" debug="0"/> 
然后保存,现在你的Tomcat和Apache的配置基本完成了