`
fan-R
  • 浏览: 44047 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

CentOS5.3 编译 mod_jk 1.2.15 链接器 整合apache httpd 和 tomcat

阅读更多
现在我们来做一个整合,也就是当访问 apache 80 端口时候 遇到 jsp 文件也可以正常访问。

如果不整合, 你的apache 80 是不能运行jsp文件的, 只能使用8080端口,也就是tomcat 来访问。

如何整合呢 ? 要借助一个叫做 apache tomcat 的链接器。

下面是官方网站的下载地址,目前为止最新版是 1.2.15。。。
http://archive.apache.org/dist/jakarta/tomcat-connectors/jk/source/jk-1.2.15/

文章最后我会把这个工具提供下载,如果官方网站太慢的话。

首先下载 jakarta-tomcat-connectors-1.2.15-src.tar.gz 到服务器
解压
]# tar xzvf jakarta-tomcat-connectors-1.2.15-src.tar.gz

注意是进入: jk/native 这个目录
]# cd jakarta-tomcat-connectors-1.2.15-src/jk/native

请确认你的 apache 的 apxs 文件位置
  native]# ./configure --with-apxs=/usr/local/apache2/bin/apxs

编译生成mod_jk
  native]# make

拷贝编译完成生成的 mod_jk.so 文件, 这里也是要注意你的apache modules 目录位置
  native]# cp ./apache-2.0/mod_jk.so /usr/local/apache2/modules/
===============================================
修改 apache 配置文件

# vi /etc/httpd.conf

在DirectoryIndex中添加 index.jsp

<IfModule dir_module>
    DirectoryIndex index.html index.jsp
</IfModule>
增加关于加载mod_jk的语句:

LoadModule jk_module modules/mod_jk.so
Include /usr/local/apache2/conf/mod_jk.conf

添加以下内容( 添加的时候去掉注释,可能文件不能显示中文 ):

###### 指出mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile /usr/local/apache2/conf/workers.properties

###### Where to put jk logs
JkLogFile /usr/local/apache2/logs/mod_jk.log

###### Set the jk log level [debug/error/info]
JkLogLevel info

###### Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

###### JkOptions indicate to send SSL KEY SIZE,
JkOptions  +ForwardKeySize +ForwardURICompat -ForwardDirectories

###### JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"

###### 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/*  worker1
JkMount /*.jsp worker1
JkMount /*.do worker1

把一些注释去掉吧,只些一些起作用的语句上去。保存退出。
===================================================

在/usr/local/apache2/conf/ 下面 建立两个配置文件mod_jk.conf和workers.propertie

注意:
( 如果没有 conf 目录,可以建立,因为我安装时指定把 httpd.conf 放在 /etc 下的,就没有 conf 目录了 )
# vi mod_jk.conf

添加以下内容( 添加的时候去掉注释,可能文件不能显示中文 ):

###### 指出mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile /usr/local/apache2/conf/workers.properties

###### Where to put jk logs
JkLogFile /usr/local/apache2/logs/mod_jk.log

###### Set the jk log level [debug/error/info]
JkLogLevel info

###### Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

###### JkOptions indicate to send SSL KEY SIZE,
JkOptions  +ForwardKeySize +ForwardURICompat -ForwardDirectories

###### JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"

###### 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/*  worker1
JkMount /*.jsp worker1
JkMount /*.do worker1

------------------------------------------------------------

# vi workers.properties

添加以下内容:

####### Defining a worker named worker1 and of type ajp13
worker.list=worker1

####### Set properties for worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

-------------------
我的tomcat 配置文件路径:
/usr/local/tomcat/conf/server.xml

最后编辑Tomcat的配置文件server.xml,在 <Host 段中加入:

<Context path="" docBase="/usr/local/apache2/htdocs" debug="0" reloadable="true" crossContext="true"/>



重新启动Apache和Tomcat。。。

[root@localhost bin]# ./shutdown.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:       /usr/java/jdk1.7.0

[root@localhost bin]# ./startup.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:       /usr/java/jdk1.7.0

# /usr/local/apache2/bin/apachectl stop

# /usr/local/apache2/bin/apachectl start

刚才我在修改 httpd.conf 可能写入了一些多余信息 导致apache配置文件出错,我注释就可以了。

在 /usr/local/apache2/htdocs/ 下 删掉 index.html

建立一个index.jsp ,

写入一些简单的内容:

<%
out.println( "Hello www.17rumen.com" );
%>
用浏览器访问服务器 http://192.168.138.128,看到正确的页面了。

说明 apache 遇到jsp页面 ,它可以提交给 tomcat 去处理。。。
分享到:
评论

相关推荐

    CentOS-5.3-x86_64-bin-1of7.iso

    centos5.3_64镜像包,安装包,ISO镜像

    mod_jk for apache2.4.7

    自己在APACHE2.4.7x64编译成功的mod_jk,希望大家不要再走弯路,我编译了好久,才最后得到正果。

    CentOS5.3-5.8_32x64位DVD镜像下载种子

    【描述】中提到的"此文件由wdlinux收集,整理了centos5.3至5.8DVD版32_64位系统种子码",意味着这是一份包含了CentOS 5.3到5.8不同版本的32位和64位系统的ISO镜像文件的集合。这些ISO镜像是DVD版本,通常包含完整的...

    Centos5.3安装lm_sensors_cpu温度监控

    在 CentOS 5.3 中,lm_sensors 是一个用于监控硬件温度、电压和风扇速度的开源工具。要安装并配置 lm_sensors 来监控 CPU 温度,你需要遵循以下步骤: 1. **检查 lm_sensors 是否已安装** 在开始之前,首先确认...

    apache2.4编译安装包带mod_jk.so

    完成以上步骤后,Apache 2.4就成功地在CentOS 6.5-6.9系统上编译安装,并且集成了mod_jk模块,能够有效地管理和负载均衡多个Tomcat实例。请注意,根据实际环境,你可能需要调整某些配置,例如Java的安装路径、Tomcat...

    CentOS5.3_05_mysql安装

    在 CentOS 5.3 上安装 MySQL,尤其是编译安装,是一个涉及多个步骤的过程,需要对操作系统和数据库管理有一定的了解。 首先,我们需要准备安装环境。CentOS 5.3 是基于 Red Hat Enterprise Linux 的一个稳定版本,...

    apache2.4 mod_jk.so

    apache2.4 mod_jk.so,下载源码编译,亲测可以启动,可用。(请不要调整我的下载积分,服务大家,我只需要1分就够了,谢谢)

    mod_jk_centos6_x32_http2.2.27_tomcat6

    在centos6.5 32位操作系统下 apache版本:http2.2.27 tomcat版本:tomcat6.0 下测试通过

    Centos mod_jk.so 文件

    综上,"Centos mod_jk.so 文件"涉及了Apache与Tomcat的集成,负载均衡策略,以及如何在CentOS环境中配置和使用mod_jk模块。通过详细阅读note.txt并按照指南操作,可以成功地设置一个高效的Web服务环境。

    apache2&tomcat7&mod_jk

    配置mod_jk涉及修改Apache的配置文件`/etc/apache2/mods-enabled/jk.conf`(Ubuntu/Debian)或`/etc/httpd/conf.d/mod_jk.conf`(CentOS/RHEL)。你需要指定Tomcat服务器的位置和工作线程数等参数: ```apacheconf ...

    centos下用JK整合TOMCAT和Apache的多子站WEB服务器方法.doc

    在CentOS 6.4 64位操作系统中,整合Apache和Tomcat以实现多子站的WEB服务,通常会采用JK模坓(mod_jk)作为连接器,这可以提高性能并解决通过代理访问时可能出现的不稳定性。JK模块是Apache Tomcat Connectors的一...

    LINUX操作系统_CentOS5.3_超详细的安装图文教程.doc

    LINUX操作系统_CentOS5.3_超详细的安装图文教程.doc

    集群(linux+tomcat+mod_jk)

    mod_jk是Apache的一个模块,用于连接Apache和Tomcat,实现两者间的通信。它提供了负载均衡和故障转移的功能,确保请求能够被正确、高效地分发到各个Tomcat实例。 五、Tomcat应用服务器 Tomcat是一款开源的Java ...

    mod_jk.so源码文件

    安装方法: 将源码包FTP到服务器然后执行下面的命令:(centOS为例) #tar –xzvf tomcat-connectors-...然后将/opt/mod_jk/native 的mod_jk.so放入httpd中的modules文件夹中。 剩下的配置方法百度一下,有很多。

    mod_evasive/mod_dosevasive22

    `mod_evasive` 和 `mod_dosevasive22` 是Apache Web服务器上的安全模块,主要用于防止DDoS(分布式拒绝服务)攻击和CSRF(跨站请求伪造)攻击。这两个模块通过智能监控和限制来自同一IP地址的过多请求来保护服务器,...

    mod_jk_centos6_x64_http2.2.27_tomcat6

    在centos6.5 64位操作系统下 apache版本:http2.2.27 tomcat版本:tomcat6.0 下测试通过

    CentOS5.3系统

    1. **内核升级**:CentOS 5.3 使用了Linux内核版本2.6.18,提供了更好的硬件支持和性能优化,尤其是在处理多核处理器和虚拟化技术方面。 2. **安全性增强**:此版本加强了系统的安全特性,包括 SELinux(Security-...

    CentOS5.3挂载NTFS

    以下是在CentOS 5.3版本上挂载NTFS驱动器的详细步骤: 1. **安装内核补丁**: 在进行NTFS挂载之前,首先需要确保你的系统内核支持NTFS。通过运行`uname -a`命令来查看当前系统的内核版本。例如,如果你的内核版本...

    mod_fcgid-2.3.9.tar.gz

    Apache mod_fcgid 是一个非常重要的模块,它允许Apache HTTP Server与FastCGI应用程序进行通信,从而提升服务器性能和响应速度。FastCGI是一种常驻型的CGI(Common Gateway Interface)实现,它解决了传统CGI模式下...

    mod_ssl-2.4.6-97.el7.centos.x86_64.rpm

    官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装

Global site tag (gtag.js) - Google Analytics