Windows环境下Apache2.X与Tomcat6.X的整合

  1. 前言
      Apache HTTP Server(后面简称Apache)是web服务器,Tomcat是servlet服务器。Apache处理静态页面和资源文件的能力大于Tomcat本身的处理能力。在高访问量的网站应用中,整合后的体系结构使Apache和Tomcat分工协作,能大幅提高系统处理能力。此外也可以通过连接器的参数设置让其支持应用压力的负载均衡等等额外功能。
      可以这么理解他们之间的整合,每个Tomcat worker是一个服务于web服务器、等待执行servlet的Tomcat实例。使用像Apache之类的web服务器转发servlet请求给位于其后面的一个Tomcat进程(也就是前面所说的worker)。
      本文通过ajp13协议实现Apache与Tomcat的整合。

  2. 安装
      分别下载Tomcat6.X和Apache2.X版本安装。
      1)Apache2.X:http://httpd.apache.org/    具体的下载点自己找吧
      2)Tomcat6.X:http://tomcat.apache.org/
      3)连接器:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.30/    针对Apache的版本下载合适的连接器文件mod_jk-*.so,注意连接器的版本能分别支持Apache httpd和Tomcat的版本就行,所提供链接仅供参考。

  3. 整合
      1)将mod_jk-*.so更名为mod_jk.so文件并拷贝入Apache根目录下modules子目录中。

      2)Apache根目录下conf子目录中建立连接器工作参数配置文件workers.properties,打开并编辑如下:
    workers.tomcat_home = " D:\apache-tomcat-6.0.16 "
    workers.java_home
    = " D:\jdk1.6.0_18 "
    ps
    = \
    wk.list
    = ajp13
    wk.ajp13.port
    = 8009
    wk.ajp13.host
    = localhost
    wk.ajp13.type
    = ajp13
    wk.ajp13.lbfactor
    = 50
    wk.ajp13.cachesize
    = 10
    wk.ajp13.cache_timeout
    = 600
    wk.ajp13.socket_keepalive
    = 1
    wk.ajp13.socket_timeout
    = 300  

      3)打开conf目录下httpd.conf文件,补充配置如下:
            LoadModule jk_module modules/mod_jk.so    #加载Apache与Tomcat的连接器组件
            JkWorkersFile conf/workers.properties    #指定连接器的参数配置文件
            JkMount  /*.do ajp13    #指定*.do为转发的请求类型
            JkMount  /*.jsp ajp13    #指定*.jsp为转发的请求类型

      4)执行“开始->程序->Apache HTTP Server 2.X->Configure Apache Server->Test Configuration”验证mod_jk是否安装正常,如果有错会显示如下窗口(图 3.4-1),需进一步检查连接器版本与Apache、Tomcat是否匹配。


    图 3.4-1

      5)验证通过后可以测试整合是否成功了
            在Tomcat webapps目录下新建foo应用,并创建test.jsp内容如下:
    <%
      out.println(
    " test ok! " );
    %>
            完成之后分别启动Tomcat和Apache HTTP Server。
            在浏览器中打开:http://localhost:8080/foo/test.jsp 显示正常
            再打开:http://localhost/foo/test.jsp 显示相同,那么说明Tomcat整合Apache HTTP Server已经成功了。
            如果只启动了Apache HTTP Server而未启动Tomcat,则报错(如图 3.5-1)。

    图 3.5-1

  4. 绑定域名
      步骤如下:
      1)在“C:\WINDOWS\system32\drivers\etc\hosts”文件中加入一行:xxx.xxx.xxx.xxx www.apoz.org
      2)在Tomcat配置文件server.xml中,加入:
    < Host name = " www.apoz.org "  debug = " 0 "  appBase = " webapps "  unpackWARs = " true "  autoDeploy = " true "  xmlValidation = " false "  xmlNamespaceAware = " false " >
              
    < Context docBase = " foo "  path = ""  debug = " 0 "  reloadable = " true " />
    </ Host >
      3)启动Tomcat,在浏览器中打开:http://www.apoz.org:8080/test.jsp ,OK访问正常,通过绑定域名访问Tomcat应用成功。

你可能感兴趣的:(Windows环境下Apache2.X与Tomcat6.X的整合)