刚完成的一个项目需要用到 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/
分享到:
相关推荐
6. **安装与配置**:配置Apache+Tomcat+JK集群通常包括以下步骤: - 安装Apache服务器并启用JK模块。 - 安装Tomcat服务器并部署应用。 - 配置JK模块的worker.properties文件,定义每个Tomcat服务器的工作节点。 ...
这通常包括编译和安装mod_jk,然后在Apache的配置文件(如httpd.conf)中加载该模块,并设置JK的相关参数,如worker.properties,定义每个Tomcat实例的worker。 3. 配置Tomcat的server.xml文件,添加JK监听器(mod_...
以下是对标题“tomcat+apache+jk集群和负载均衡”以及描述“tomcat+apache+jk集群和负载均衡”的深入解析,涵盖其原理、配置步骤以及关键参数调整。 ### 1. 理论基础 #### Tomcat Tomcat是Apache软件基金会下的一...
【标题】"Tomcat+Apache+JK集群"指的是在Web服务器架构中,通过Apache HTTP Server与Tomcat应用服务器结合,并利用JK模块实现负载均衡和高可用性的集群部署方式。这种方式可以提升系统的性能和稳定性,应对高并发...
Apache+JK+Tomcat搭建负载均衡是一种常见的高可用性和性能优化策略,主要目的是分散网络流量,提高服务的稳定性和响应速度。这个方案特别适合大型网站或应用,可以有效防止单点故障,提升用户体验。 首先,负载均衡...
### Linux环境下Apache+Tomcat+JK集群配置详解 #### 一、集群基础知识 集群技术是提升系统服务能力和高可用性的关键技术之一。通过将多台独立的服务器组织成一个集群,可以实现故障无缝迁移,即当集群中某台服务器...
Apache+Tomcat+JK 实现集群负载均衡是一种常见的Web服务器和应用服务器的部署方式,它能够提高系统的可用性和响应速度,实现服务的高并发处理。本文将详细介绍如何配置这一环境。 首先,我们需要准备以下软件: 1. ...
apache+tomcat+mod_jk整合文档,内有安装包。apache+tomcat+mod_jk整合文档,内有安装包。
配置Apache+JK+Tomcat集群可以让多台服务器上的Tomcat实例共同提供服务,提高系统的稳定性和负载能力。 ##### 1. 准备工具 - **Tomcat6.0.35**:使用Tomcat6的原因在于其兼容性较好,适用于Java 1.5环境。 - **...
在“apache+tomcat+jk集群”这一主题中,我们将深入探讨如何通过Apache、Tomcat以及JK模块的结合,实现负载均衡和集群配置,从而提升系统的性能和稳定性。 ### Apache的角色 Apache是一款广泛使用的开源Web服务器...
Apache2.4、Tomcat8.0以及JK模块的结合使用是实现Web服务器...在实际操作中,需对Apache和Tomcat的配置有深入理解,并掌握JK模块的安装和配置方法。通过这种方式,你可以轻松地扩展服务集群,以应对高并发访问的挑战。
Apache+JK+Tomcat_集群
"mod_jk.so"是这个模块的动态链接库文件,它在Linux系统中被加载到Apache服务器,使得Apache能够识别并处理JK模块的配置。 Apache和Tomcat的整合涉及到多个步骤: 1. **安装与配置Apache**:首先,你需要在服务器...
Apache+Tomcat+JK配置负载均衡是Web服务器与应用服务器集群的一种常见组合,用于实现高可用性和高并发处理能力。Apache作为前端服务器,通过JK模块(mod_jk)与后端的Tomcat应用服务器进行通信,将HTTP请求分发到多...
本文将详细介绍如何配置 Apache + Tomcat 集群,包括安装 Apache 和 Tomcat 服务器、配置 mod_jk 模块、配置 Apache 和 Tomcat 服务器、配置负载均衡控制器等。 一、安装 Apache 服务器 首先,需要安装 Apache ...
在这个配置中,Apache作为前端服务器,通过mod_jk模块与后端的Tomcat应用服务器进行通信,实现请求的分发和负载均衡。 Apache HTTP Server是世界上最流行的开源Web服务器软件,它可以处理静态内容并转发动态内容到...
- 可以使用mod_jk模块或者mod_proxy模块来实现Apache与Tomcat之间的通信。 通过以上步骤,你可以在Linux环境下搭建起一个基于Apache和Tomcat的Web服务环境。这种方式不仅可以提高Web应用的性能,还可以增强其安全...
### Apache+Tomcat服务器集群配置详细步骤 #### 一、引言 在现代Web开发中,随着业务规模的不断扩大和用户需求的日益增长,单一服务器往往难以满足高性能、高可靠性的要求。为了应对这一挑战,通常采用Apache+...