搜档网
当前位置:搜档网 › apache http server 与 tomcat 多域名 集成(连接) 配置步骤

apache http server 与 tomcat 多域名 集成(连接) 配置步骤

apache http server 与 tomcat 多域名 集成(连接) 配置步骤
apache http server 与 tomcat 多域名 集成(连接) 配置步骤

apache http server 与tomcat 多域名集成(连接) 配置步骤准备工作:下载tomcat-connectors-1.2.32-windows-i386-httpd-2.2.x.zip

一、配置apache

JK 的配置最关键的有三个文件,在pache 的 conf 目录下,分别是

httpd.conf

Apache 服务器的配置文件,用来加载 JK 模块以及指定 JK 配置文件信息

workers.properties

到 Tomcat 服务器的连接定义文件

uriworkermap.properties

URI 映射文件,用来指定哪些 URL 由 Tomcat 处理,你也可以直接在

httpd.conf 中配置这些 URI,但是独立这些配置的好处是 JK 模块会定期更新该文件的内容,使得我们修改配置的时候无需重新启动 Apache 服务器。

1. 配置httpd.conf

在此配置文件末尾添加以下配置信息,加载jk

# (httpd.conf)

# 加载 mod_jk 模块

LoadModule jk_module modules/mod_jk.so

#

# Configure mod_jk

#

JkWorkersFile conf/workers.properties

JkMountFile conf/uriworkermap.properties

JkLogFile logs/mod_jk.log

JkLogLevel warn

2. 配置workers.properties

们配置了两个类型为 ajp13 的 worker 分别是 s1 和 s2,它们指向同一台服务器上运行在两个不同端口 8109 和 8209 的 Tomcat 上。接下来我们配置了一个类型为 lb(也就是负载均衡的意思)的 worker,它的名字是 DLOG4J,这是一个逻辑的 worker,它用来管理前面配置的两个物理连接 s1 和 s2。最后还配置了一个类型为 status 的 worker,这是用来监控 JK 本身的模块。有了这三个worker 还不够,我们还需要告诉 JK,哪些 worker 是可用的,所以就有worker.list = DLOG4J, status这行配置。

#

# workers.properties

#

# list the workers by name

worker.list=DLOG4J, status

# localhost server 1

# ------------------------

worker.s1.port=8009

worker.s1.host=localhost

worker.s1.type=ajp13

# localhost server 2

# ------------------------

worker.s2.port=8209

worker.s2.host=localhost

worker.s2.type=ajp13

worker.s2.stopped=1

worker.DLOG4J.type=lb

worker.retries=3

worker.DLOG4J.balanced_workers=s1, s2 worker.DLOG4J.sticky_session=1

worker.status.type=status

3. 配置uriworkermap.properties

/*=DLOG4J

/jkstatus=status

!/*.gif=DLOG4J

!/*.jpg=DLOG4J

!/*.png=DLOG4J

!/*.css=DLOG4J

!/*.js=DLOG4J

!/*.htm=DLOG4J

!/*.html=DLOG4J

URI 映射配置,需要指定哪些链接是由 Tomcat 处理的,哪些是由 Apache 直接处理的,所有的请求都由 DLOG4J 这个 worker 进行处理,但是有几个例外,/jkstatus 请求由 status 这个 worker 处理。另外这个配置中每一行数据前面的感叹号是什么意思呢?感叹号表示接下来的 URI 不要由 JK 进行处理,也就是 Apache 直接处理所有的图片、css 文件、js 文件以及静态 html 文本文件。

4. 配置虚拟主机

DocumentRoot

"D:\eclipse_workspace\.metadata\.plugins\org.eclipse.wst.server.core \tmp0\wtpwebapps\cehui"

ServerName main

ServerAlias main

JkMount /*.htm DLOG4J

JkMount /*.do DLOG4J

DocumentRoot

"D:\eclipse_workspace\.metadata\.plugins\org.eclipse.wst.server.core \tmp0\wtpwebapps\cehui\lz"

ServerName lz

ServerAlias lz

JkMount /*.htm DLOG4J

JkMount /*.do DLOG4J

配置了两个基于域名的虚拟主机

需要注意的是虚拟主机中也需要指定那些内容需要由jk转到tomcat处理,否则动态页面会出404错误。

二、配置tomcat

main

lz

docBase="D:\eclipse_workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\ wtpwebapps\cehui" path="" reloadable="false"/>

docBase="D:\eclipse_workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\ wtpwebapps\cehui" path="/" reloadable="true"

source="org.eclipse.jst.jee.server:cehui"/>

配置了一个基于主机名(域名)的虚拟主机,并将多个主机名捆绑到当前虚拟主机上,捆绑的主机名以多个Alias列出即可。

Tomcat的server.xml文件,在初始状态下,只包括一个虚拟主机,但是它容易被扩充到支持多个虚拟主机。增加虚拟主机只要增加完整Host 标签即可。每一个Host元素必须包括一个或多个context元素,所包含的context元素中必须有一个是默认的context,这个默认的context的显示路径应该为空(例如,path="")。

相关主题