apache 整合tomcat

apache与tomcat集成有许多优点,我很早以前配置的tomcat负载均衡就是由apache做前端,由apache请求派,

从而发达到负载均衡的,而apache在稳定性上也是强于tomcat的,他们两个的集成可以弥补tomcat许多先天配置的不足。

例如最近的一个ip段过滤的需求要采用这种集成方案。因为tomcat的ip过滤达不到想要的效果,tomcat的ip过滤只能设置

某个ip,而不能设置ip段,十分的不爽,逼着我把apache集成进来。下面讲一讲集成方案。配置这个我采用的版本是:

apache_2.2.11-win32-x86-no_ssl.msi

apache-tomcat-6.0.18免安装版.zip

mod_jk-1.2.28-httpd-2.2.3.so(这个东东的版本比较苛刻,反正我用mod_jk-1.2.28-httpd-2.0.52.so配置的时候就不好使)
--------------------------------------------------------------------------------------------------------------

1.将mod_jk-1.2.28-httpd-2.2.3.so复制到E:\Apache2.2\modules(我的apache安装目录),我把他改了下名,方便后面的操作

改名为mod_jk.so。

2.创建 workers.properties 文件,内容如下:

# Define 1 real worker using ajp13

worker.list=worker1

# Set properties for worker1 (ajp13)

worker.worker1.type=ajp13

worker.worker1.host=localhost

worker.worker1.port=8009

拷贝到E:\Tomcat\conf\jk下,这是我tomcat的安装目录。

3.修改 Tomcat server.xml 文件

找到下面这行内容并在后面添加配置信息:

   <Engine name="Catalina" defaultHost="localhost">

配置信息如下:
 

<!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">        
    -->
    <Engine name="Catalina" defaultHost="localhost">

        <Listener className="org.apache.jk.config.ApacheConfig"
           workersConfig="conf/jk/workers.properties"
           modJk="E:/Apache2.2/modules/mod_jk.so"
           jkLog="logs/mod_jk.log"
           jkDebug="info"
           jkWorker="worker1"
           noRoot="true"
        />


      <!--For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation) -->
      <!--
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
      -->       
 
4.修改 Apache httpd.conf 文件

在文件最后加上

#To be added at the end of your httpd.conf

Include E:/Tomcat/conf/auto/mod_jk.conf


5.重启 Tomcat 并自动生成 mod_jk.conf

我生成的mod_jk.conf为:


########## Auto generated on Wed Apr 29 18:08:28 CST 2009##########

<IfModule !mod_jk.c>
  LoadModule jk_module "E:/Apache2.2/modules/mod_jk.so"
</IfModule>

JkWorkersFile "E:/Tomcat/conf/jk/workers.properties"
JkLogFile "E:/Tomcat/logs/mod_jk.log"

JkLogLevel info

<VirtualHost localhost>
    ServerName localhost

    JkMount /manager worker1
    JkMount /manager/* worker1

    JkMount /docs worker1
    JkMount /docs/* worker1

    JkMount /examples worker1
    JkMount /examples/* worker1

    JkMount /host-manager worker1
    JkMount /host-manager/* worker1

    JkMount /YangFan worker1
    JkMount /YangFan/* worker1
</VirtualHost>

6.启动 Apache 并测试配置,如果版本和我一致的话,应该成功。如果不成功就是路径配置有问题。

都启动好以后,地址栏输入http://localhost/****(tomcat中的项目目录),如果成功进入项目就说明配置成功。

OK,集成完成。

你可能感兴趣的:(apache,html,tomcat,xml,IE)