Tomcat和 apache的整合

Tomcat能够处理jsp等动态请求,但在处理高并发上不如apache那么强大,所以需要将两者整合。

1.编译安装mode_jk.so模块

mod_jk简称JK,是Apache服务器的一个可插入模块,用以提供处理JSP/Servlet的能力,mod_jk实质上是Apache与Tomcat的连接器,并藉此附带提供集群负载均衡的功能

   在编译安装mod_jk前需要系统已经安装apxs,该文件可通过安装httpd-devel得到

   yum install httpd-devel

下载tomcat-connectors-1.2.40-src.tar.gz

  解压: 

  tar zxvf  tomcat-connectors-1.2.40-src.tar.gz

  进入native目录,执行buildconf.sh

./buildconf.sh

./configure --with-apxs=/usr/sbin/apxs

make &make instal

编译安装完成后,会在/usr/lib64/httpd/modules//etc/httpd/modules下生成mod_jk.so

 

2.apache加载mod_jk
/etc/httpd/conf/下面建立两个配置文件mod_jk.confworkers.properties
# 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  #
Apache支持对servlet传送,用以Tomcat解析
JkMount /*.jsp worker1       #
Apache支持对jsp传送,用以Tomcat解析

# vi workers.properties
添加以下内容:
# Defining a worker named worker1 and of typeajp13
worker.list=worker1

# Set properties for worker1
worker.worker1.type=ajp13#
传输类型
worker.worker1.host=localhost
worker.worker1.port=8009 # AJP1.3
传输所使用的端口
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

 

 

配置httpd.conf

1.http.conf末尾增加如下语句,加载mod_jk.so模块

LoadModule jk_module modules/mod_jk.so
Include /etc/httpd/conf/mod_jk.conf

 

2.DirectoryIndex中添加 index.jsp

 

 

3.默认DocumentRoot /var/ww/html,在此目录下新建index.jsp,写入测试

语句:

<%

    out.println("hellojava");

%>

4.配置 tomcat server.xml,

HOST段中加入:
<Context path=""docBase="/var/www/html" debug="0"reloadable="true" crossContext="true"/>

   <!-- Define an AJP 1.3 Connector on port 8009 -->

     #在配置文件中可以看到tomcat默认使用端口8009进行AJP协议的传输  

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

启动Apache和Tomcat,用浏览器访问http://localhost/,看到”hello java”就说明配置成功了。


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