Apache + JK + Tomcat + 虚拟主机 架构的整合配置方式。
转载:http://www.oschina.net/discuss/thread/2399
关于有虚拟主机 Apache + JK +( tomcat1 / tomcat 2) 这么一个架构的配置方式
之前发过在回帖中,发现的人不多,现在开主题发。
步骤不多,也把各个配置的细节,用途都写出来了,新手们认真看。
首先配的是 httpd.conf 的虚拟主机配置
如下:httpd.conf 找到 #NameVirtualHost 去掉前边的 # 然后配置如下
NameVirtualHost *:80
#########################################
<VirtualHost *:80>
ServerAdmin xxx@xxx.com
DocumentRoot "/opt/webroot"
ServerName localhost
#ErrorLog logs/error.log
JkMountFile conf/localhost.properties
</VirtualHost>
#########################################
<VirtualHost *:80>
ServerAdmin xxx@xxx.com
DocumentRoot "/opt/web1"
ServerAlias www.web1.com
#ErrorLog logs/error.log
JkMountFile conf/web1.properties #加载mod_jk配置路径
</VirtualHost>
#########################################
<VirtualHost *:80>
ServerAdmin xxx@xxx.com
DocumentRoot "/opt/web2"
ServerAlias www.web2.com
#ErrorLog logs/error.log
JkMountFile conf/web2.properties #加载mod_jk配置路径
</VirtualHost>
##################################
以上配置的前提是你已经顺利编译安装好 mod_jk 模块
然后修改 mod_jk 的全局配置 httpd-jk.conf
vim conf/extra/httpd-jk.conf
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties #指定各个配置文件路径
JkMountFile conf/urimap.properties
JkLogFile logs/mod_jk.log
JkLogLevel warn
<Location /jkstatus> #管理页面
JkMount status
</Location>
:wq 保存退出
#########################
然后创建各自的 web1.properties ,web2.properties 配置文件,目录路径跟 httpd.conf 相同
# vim conf/web1.properties
/*=tomcat_web1
!/*.gif=web1
!/*.jpg=web1
!/*.png=web1
!/*.html=web1
!/*.htm=web1
#第一行的意思是把请求转往代号为 tomcat_web1(命名可与虚拟主机无关) 的 tomcat 端, 一会我们需要在 workers.properties 配置中设置。
#而剩下的是不需要转往 tomcat 的请求类型, 因为 tomcat 处理静态文件性能很差, 所以这里的规则就是过滤,把静态文件处理留给apache。
:wq 保存退出
web2.properties 的配置方式跟 web1 相同。
#################################
编辑 jk 全局配置
# Vim workers.properties
worker.list=tomcat_web1,tomcat_web2,status #告诉 jk 你需要他统管的 tomcat 名(代号) 最后一个"status" 是jk 的管理页面
worker.status.type=status #为 status 路径设置属性为管理页面。
############# 先配置好每个 tomcat 与 JK 的链接参数 ################
worker.s1.type=ajp13 #协议类型
worker.s1.host=127.0.0.1 #tomcat所在服务器的ip,如果是本机就是 127.0.0.1
worker.s1.port=8108 #tomcat的端口
worker.s1.lbfactor=1 #如果是均衡负载状态,多个tomcat的负载比例。
worker.s2.type=ajp13
worker.s2.host=127.0.0.1
worker.s2.port=8109
worker.s2.lbfactor=1
############## 再配置 tomcat 与 jk 的调度 ###############
worker.tomcat_web1.type=lb #lb 的意思是可集成多个tomcat均衡负载,但只有一个tomcat 的时候也可以使用。
worker.tomcat_web1.balance_workers=s1 #开头的"worker.tomcat_web1"对应web1.properties的配置。这里配置群组的tomcat成员。"s1" 是成员代号。对应上边tomcat的链接参数。
worker.tomcat_web1.sticky_session=True #是否打开session 粘贴。
worker.tomcat_web2.type=lb #意义同上
worker.tomcat_web2.balance_workers=s2
worker.tomcat_web2.sticky_session=True
:wq 配置完成后保存退出
###########################
配置路径名:
编辑或创建 urimap.properties
# vim urimap.properties
/*=lb # 把请求发往 lb
/jkstatus=status # 把JK管理页面的连接定为 http://www.web1.com/jkstatus
或者 http://www.web2.com/jkstatus
:wq 保存退出
你也可以修改或创建相同目录里localhost.properties 把 管理页面链接加到里边。这么链接地址就为 http://localhost/jkstatus
#####################
然后就剩下 tomcat 了
修改端口号对应tomcat 组这个不用说了吧?
最重要说的是既然在各自的 web1.properties 跟 workers.properties中配置了 tomcat 名, 这么除了告诉jk tomcat的IP地址以及端口号, 还必须告诉 tomcat 他的名字。
Engine jvmRoute="tomcat_web1"
分别在 tomcat1 跟 tomcat2 的 server.xml 中找到相应的配置. 改上相应的参数!
到此,即完成整个 Apache + JK + tomcat 的配置过程。
相关推荐
### RedHat AS4 下 Apache2 + MySQL + PHP + Tomcat 整合及虚拟主机配置 #### 软件概述与安装准备 根据给定文件,本文档主要介绍如何在 RedHat AS4 操作系统上安装并配置 Apache2、MySQL、PHP 和 Tomcat,以及如何...
4. 配置Apache虚拟主机:通过 JKMount 指令将特定路径映射到Tomcat实例。 5. 启动和测试Apache和Tomcat:确保两者能正常启动,并通过HTTP请求测试整合是否成功。 这个配置在Windows 7 64位环境下可能涉及到的其他...
在配置Apache与Tomcat的连接时,我们需要在httpd.conf中添加mod_jk的配置,例如启用mod_jk模块,设置worker定义(这将在workers.properties文件中详细描述)以及虚拟主机或路径的重定向规则。 接下来,workers....
- 在Apache的配置文件中,创建虚拟主机来指向Tomcat,通常使用`<VirtualHost>`标签。 - 使用`mod_rewrite`模块实现URL重写,将JSP请求转发到Tomcat。 10. **测试与调整**: - 访问Apache服务器的本地地址(如`...
1. **httpd.conf**:这是Apache HTTP服务器的主要配置文件,它定义了服务器的行为,如监听的端口、虚拟主机、代理设置等。在整合Apache与Tomcat时,我们需要在httpd.conf中添加或修改以下内容: - 首先,启用mod_...
Apache和Tomcat是两种常用的Web...如果你需要管理多个应用或网站,只需在Apache的虚拟主机配置中添加更多条目即可。记住,在配置过程中遇到问题时,参考官方文档或在线社区(如iteye博客中的链接)可以获取更多帮助。
4. **配置Apache虚拟主机**:在`httpd-vhosts.conf`文件中,为你的站点创建一个虚拟主机,并指定使用mod_jk模块处理动态请求: ``` *:80> ServerName your.domain.com DocumentRoot "C:/path/to/your/static/...
"Tomcat+IIS整合配置文件"的标题和描述指向了一个特定的场景:将Apache Tomcat(一个流行的Java Servlet容器)与Microsoft IIS(互联网信息服务)集成,以实现更高效的Web服务。这种整合通常用于在同一个服务器上...
总结来说,Apache 代理整合多个 Tomcat 主要涉及到 Apache 的虚拟主机配置、代理模块的启用以及与 Tomcat 之间的通信协议(通常是 HTTP 或 AJP)。这样的架构允许你通过单一入口点管理多个应用服务,提高系统的灵活...
这里,`proxyName`和`proxyPort`应与Apache中的虚拟主机配置相匹配。 **5. 故障排查与优化** - 检查Apache和Tomcat的日志文件,寻找可能的错误信息。 - 使用`curl`或浏览器测试配置是否成功。 - 调整Apache和...
- Apache除了提供HTTP服务外,还支持广泛的HTTP协议配置选项,如虚拟主机、URL重写规则等。 - Tomcat作为Servlet容器,可以独立运行,但功能相对单一,主要针对Java Web应用。 4. **扩展性**: - Apache可通过...
每个虚拟主机配置中,使用`JkMount`指令将所有请求映射到相应的Tomcat实例,如`tomcat1`或`tomcat2`。 5. `DirectoryIndex`和`DocumentRoot`指令定义了默认索引文件(如`index.jsp`)和每个虚拟主机的应用根目录。 ...
在Apache服务器上,需要在httpd.conf或虚拟主机配置中添加mod_jk的配置,定义工作线程、连接池等参数。 3. **创建虚拟主机映射**:在IIS中,将Java应用程序的虚拟目录指向ISAPI Redirector。在Apache中,使用mod_jk...
- 配置Tomcat的server.xml,设置Engine、Host和Context元素,定义虚拟主机和应用路径。 - 配置mod_jk的worker.properties,定义Apache与Tomcat之间的连接器。 - 测试配置,通过访问静态和动态页面来验证Apache和...
Apache 与 Tomcat 整合是 Web 服务领域常见的架构模式,主要目的是结合两者的优点,以实现更高效、更灵活的动态内容处理。Apache 是一个功能强大的 Web 服务器,擅长处理静态内容,如 HTML、CSS 和 JavaScript 文件...
3. 配置httpd.conf:设置虚拟主机(VirtualHost)或目录(Directory)的JkMount指令,将特定URL映射到相应的worker上。 4. 配置Tomcat的server.xml:开启AJP监听,添加Connector元素,指定AJP端口和协议。 在集群...
在Linux上配置Apache,首先需要下载并安装软件包,然后配置httpd.conf文件以定义服务器的行为,如端口监听、虚拟主机设置等。此外,Apache支持多种模块,如mod_jk或mod_proxy_ajp,这些模块可以用来与应用服务器(如...
- 在Apache虚拟主机配置中添加JKMount指令,指定哪些URL由Tomcat处理。 6. **Tomcat配置**: 需要在Tomcat的server.xml文件中配置AJP Connector,以便接收来自Apache的请求。 7. **测试整合**: 配置完成后,可以...
4. **配置虚拟主机**:在Apache的虚拟主机配置中,通过`JkMount`指令将需要由Tomcat处理的URL映射到`mod_jk`。例如,如果你有一个名为`myapp`的应用,你可以这样配置: ``` *:80> ServerName example.com ...
4. 配置httpd-vhosts.conf:在虚拟主机配置中,通过`JkMount`指令指定哪些URL路径应由Tomcat处理。 四、反向代理原理 反向代理是一种网络架构模式,其中,客户端请求到达Web服务器(Apache),然后服务器根据配置...