当前位置:文档之家› Apache2.2多个虚拟主机+Tomcat6多个虚拟主机整合配置

Apache2.2多个虚拟主机+Tomcat6多个虚拟主机整合配置

Apache2.2多个虚拟主机+Tomcat6多个虚拟主机整合配置Apache与Tomcat介绍Apache是当前使用最为广泛的WWW服务器软件,具有相当强大的静态HTML处理的能力。

Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

由于有了Sun的参与和支持,最新的Servlet和JSP 规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet 2.4和JSP 2.0规范。

因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。

Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。

为什么需要整合整合的最主要原因是为了在现有的硬件条件下提供最大的负载。

如果单独使用Tomcat做JSP服务器,在工作效率上会存在问题,Tomcat处理静态HTML的能力不如Apache,并且所能承受的最大并发连接数也有一定的限制;在测试中,当并发连接较多时,Tomcat就会处于“僵死”状态,对后继的请求连接失去响应。

所以现在提出一个“整合”解决方案:将html与jsp的功能部分进行明确分工,让tomcat 只处理jsp部分,其它的由apache这个web server处理。

Apache与Tomcat各司其职,那么服务器的整体效率就能够得到提升。

整合的基本原理作为Apache下面的子项目,Tomcat 与Apache之间有着天然的联系。

在实际操作中,主要是Apache作为主服务器运行,当监听到有jsp或者servlet的请求时,将请求转发给tomcat 服务器,由tomcat服务器进行解析后,发回apache,再由apache发回用户。

在tomcat中有两个监听的端口,一个是8080用于提供web服务,一个是8009用于监听来自于apache的请求。

当apache收到jsp或者servlet请求时,就向tomcat 的8009端口发送请求,交由tomcat处理后,再返回给apache,由apache返回给客户。

关于Apache 和Tomcat 的安装,这里不再说明。

一、Apache2.2配置多个虚拟主机1、在httpd.conf文件中,找到下面这一行,把前面的#号去掉,启用http-vhosts.conf 配置文件:Include conf/extra/httpd-vhosts.conf2、找到conf/extra/httpd-vhosts.conf 配置文件,做如下配置:<VirtualHost *:80>ServerAdmin webmaster@DocumentRoot "F:/develop/www/host11"ServerName ServerAlias *JkMount /* controller #controller该处理器,稍后在conf\workers.properties配置文件中配置,如果不和tomcat整合,可以不要这一行ErrorLog "logs/host11-error.log"CustomLog "logs/host11-access.log" common #这里配置欢迎首页面DirectoryIndex index.html index.htm index.jsp<Directory "F:/develop/www/host11">Options FollowSymLinks #不允许别人修改我们的页面AllowOverride None #设置访问权限Order allow,denyAllow from all</Directory></VirtualHost><VirtualHost *:80>ServerAdmin webmaster@DocumentRoot "F:/develop/www/host12"ServerName ServerAlias *JkMount /* controller #controller该处理器,稍后在conf\workers.properties配置文件中配置,如果不和tomcat整合,可以不要这一行ErrorLog "logs/host12-error.log"CustomLog "logs/host12-access.log" common #这里配置欢迎首页面DirectoryIndex index.html index.htm index.jsp<Directory "F:/develop/www/host12">Options FollowSymLinks #不允许别人修改我们的页面AllowOverride None #设置访问权限Order allow,denyAllow from all</Directory></VirtualHost>#一个虚拟主机,对应一个<VirtualHost *:80>......</VirtualHost> 节点。

二、Tomcat配置多个虚拟主机1、在Tomcat的server.xml配置文件中,增加Host节点<Host name="" debug="0" appBase="F:/develop/www/host11" unpackW ARs="true" autoDeploy="true"><Context path="" docBase="."/><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="host11_log." suffix=".txt" pattern="common" resolveHosts="false"/><Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="host11_log." suffix=".txt" timestamp="true"/></Host><Host name="" debug="0" appBase="F:/develop/www/host12" unpackW ARs="true" autoDeploy="true"><Context path="" docBase="."/><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="host12_log." suffix=".txt" pattern="common" resolveHosts="false"/><Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="host12_log." suffix=".txt" timestamp="true"/></Host>2、要配JNDI数据源,可以扩展Context节点。

三、Apache 整合Tomcat1、下载mod_jk.so ,放到modules 目录下,下载地址/dist/tomcat/tomcat-connectors/jk/binaries/windows/下载时,注意mod_jk 和apache 的版本,选择对应的版本。

1、在Apache的conf 目录下新建workers.properties 配置文件,做如下配置:worker.list=controller,status#========tomcat1========worker.tomcat1.port=8009worker.tomcat1.host=localhostworker.tomcat1.type=ajp13worker.tomcat1.lbfactor=1#========controller,负载均衡控制器========worker.controller.type=lbworker.retries=3worker.controller.balance_workers=tomcat1worker.controller.sticky_session=1worker.status.type=status#tomcat 可以配置多个,这里的配置有点类似Apache + Tomcat 整合集群配置。

2、在Apache的conf 目录下新建uriworkermap.properties 配置文件,做如下配置:/*=controller/jkstatus=status!/*.gif=controller!/*.jpg=controller!/*.png=controller!/*.css=controller!/*.js=controller!/*.htm=controller!/*.html=controller#这里设置的是过滤规则,哪些资源文件交给controller处理,剩下的由Apache处理。

相关主题