配置 Apache + JK +Tomcat

 

刚完成的一个项目需要用到 Apache ,所以在工作中自己配置了一把,虽然网上这样的资料搜索一下有很多,不过在实际的操作过程当中还是遇到了一些问题,在此略作记录.

 

在 Tomcat 前面加一个 Apache 的主要好处有3点:

 

1. 提升对静态文件的处理性能

2. 利用 Web 服务器来做负载均衡以及容错

3. 无缝的升级应用程序

4. 利用丰富的 Apache 自身拥有的各种模块.

 

Apache的安装

     官方地址: http://httpd.apache.org/

 

     Windows : 在window 下安装还是比较简单的,一路setup 即可.

 

     Linux :  在linux 下面安装需要自己编译一下,所以安装环境中需要有编译工具.

 

                  安装步骤如下:

                  1.下载最新的源码包到环境中(以2.2.13为例), 解压到当前目录.

 

                  2. 解压后的包名一般为 [ httpd-*.*.** ] (' *' 为版本号这里为 httpd-2.2.13 ),进入此包.

 

                  3. 需要执行 ./configure 对源码进行配置, 这里主要的2个参数是指定安装路径 与 指定初始化的模块了.

                      为了省事我们可以安装所有的模块,具体模块的取舍情况根据个人需要而定,可以参考 Apache 参考文档安

                      装编译部分.

                样例
               ./configure --prefix=/opt/program/apache2 --enable-mods-shared=all

                    --prefix 参数指定了安装的路径.

                    --enable-mods-shared 指定了安装的 Apache 模块 all 为所有模块都安装.

 

                  4. 待 configure 执行完成后, 执行 [ make install  ] 即可以进行安装,这里会根据具体设置稍微慢一些.

                      安装完成后会在 --prefix 指定的目录中看到 安装好的 Apache.

 

                  5. 可以启动 Apache 进行一下验证.

 

Tomcat 安装

        官方网址 http://tomcat.apache.org/

                   Windows  和 Linux 直接解压即可

 

JK 安装

       官方网址 http://tomcat.apache.org/connectors-doc/

       Windows :  在window下可以直接下载已经编译好的 二进制版本,需要注意的是,JK的下载二进制版本都会

                              在下载文件名种标明一个支持的 Apache 版本,针对此文中Apache 版本(2.2.13),JK对应的文件

                              名称为,[ mod_jk-1.2.28-httpd-2.2.3 .so ], 虽然版本号不是一一对应的但经过我的试用是可

                              以直接使用在 apache-2.2.13 版本上面.

 

        Linux    : Linux下 就不是那么幸运的了,虽然官方上面也有对应的二进制版本下载,当经过测试之后(至少在我的

                      linux) 上面是不能正常启动,报的错误片段如下:

写道
httpd: Syntax error on line 107 of /opt/apache2/conf/httpd.conf: Cannot load /opt/apache2/modules/mod_jk-1.2.28-httpd-2.2.X.so into server: /opt/apache2/modules/mod_jk-1.2.28-httpd-2.2.X.so: wrong ELF class: ELFCLASS32

 

                      所以还是要自己手动编译一下,这个也是比较简单滴,步骤如下:

                       1.下载最新的源码包到本地,解压后进入native 目录.

                       2. 配置源码,需要指定 Apache 中的 apxs 程序的路径.

                 ./configure --with-apxs= /opt/apache2/bin/apxs

                       3.make 一下如果没有错误提示的话,在native 目录下会生成 apache-2.0 文件夹,mod_jk.so就在这个

                          文件下.

 

       安装 JK : 在获得 mod_jk.so 之后将它 copy 到 apache 安装目录下的 modules文件夹.

                      修改 Apache 的 配置文件(httpd.conf),使Apache 启动的时候加载 JK 模块.

                 写道
               #load jk
                LoadModule jk_module modules/mod_jk.so

                     启动 Apache 测试一下是否有问题.

 

 

配置 Apache 

                    1. 测试 Apache 与Tomcat 单独启动 没有任何问题.

                    2.在 Apache 的配置文件目录(conf) 新建文件 workers.properties 内容如下 :

#
# workers.properties
#
# list the workers by name
# 指定起作用的 Tomcat 实例 多个的话用 ‘,’ 分隔
worker.list=s1,jkstatus

# port 参数指定接收请求的Tomcat 端口, 注意这个端口为Tomcat 配置的 AJP/1.3 的端口.
worker.s1.port=8020

#host 指定了 Tomcat 监听的IP地址
worker.s1.host=127.0.0.1

#协议类型
worker.s1.type=ajp13
worker.jkstatus.type=status

 

 

                    3.修改 Apache 的配置文件 在文件的最底部 加入一些 JK参数,内容如下

#
# Configure mod_jk
#

JkMount            /Tomcat_Request/* s1    #此参数指定那些请求会被Apache 转给Tomcat 处理.

JkWorkersFile conf/workers.properties
JkLogFile         logs/mod_jk.log
JkRequestLogFormat   "%w %V %T"
JkLogLevel   info

 

                    4.启动 Apache 后可以向 Apache 监听的端口发送请求 在Tomcat 中的部署的工程,一次来测试是否成功.

 

总结

          从我的亲身经历来看,如果是简单的配置的话,是比较容易上手的,我在配置的过程当中有2个地方稍微卡了下,第一个是

   在Linhux 下编译 Apache 与 JK 的时候,有些触头,因为要在Linux下编译源代码,不过在实际操作之后才发现原来是那么

   简单,第二点就是最后配置JK 的时候那个 [ worker.*.port  ] 参数配置,我一直都是向 Apache HTTP/1.1发送.改过来之后一切就OK了 ,其他的问题就没有了.

 

          需要说明的是 此篇文档主要目的是说明 Apache + JK + Tomcat 的配置说明, 所以在此只是简单介绍了Apache 及JK 的一些必要参数,而且是相当粗略的 . 所以如果你在实际的生产环境当中可以根据自己需要进行更多配置.尤其是对于Apache 的配置 是需要下一些功夫来进行研究的.

 

 

参考资源

Apache2.2 文档中文版 -- 非常感谢 金步国   同志

http://lamp.linux.gov.cn/Apache/ApacheMenu/index.html         

 

Apache HTTP Server 与 Tomcat 的三种连接方式介绍   

http://www.ibm.com/developerworks/cn/opensource/os-lo-apache-tomcat/

 

JK HowTo     

http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html

 

Apache 2.2 Docuemnt

http://httpd.apache.org/docs/2.2/

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值