下载安装Apache2.2.4,选择下载windows平台安装包文件apache_2.2.4-win32-x86-no_ssl.msi。
下载tomcat Connector(jk1.2.6).
此处注意一定要下载与Apache版本匹配的jk。jk文件名后半部分名称反应Apache的版本,如:mod_jk-1.2.26-httpd-2.2.4.so其匹配的Apache为2.2.4,与本次安装的Apache版本一致。
正文:
在一台机器上配置多个站点,每个站点有自己独立的域名。假设服务器有两个站点www.123ip.com和www.124ip.com,两个站点分别运行在一个tomcat下。为方便说明,下面分别简称为www.123ip.com和www.124ip.com站点。
apache配置
将Tomcat Connector文件mod_jk-1.2.26-httpd-2.2.4.so拷贝到Apache安装目录Apache2.2\modules下。
在Apache配置文件Apache2.2\conf\httpd.conf末尾增加以下内容;
include "C:\Program Files\Apache Software Foundation\Apache2.2\conf\mod_jk.conf"
在conf文件夹下创建mod_jk.conf文件,内容为:
LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so
JkWorkersFile conf/workers.properties
#此处是指定分配给tomcat的请求 例如*.do *.jsp
JkMount /* controller
在conf文件夹下创建workers.properties文件,内容为:
#server
worker.list = controller
#========tomcat1========
worker.tomcat1.port=8020
worker.tomcat1.host=127.0.0.1
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1
#========tomcat2========
worker.tomcat2.port=8030
worker.tomcat2.host=127.0.0.1
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2
worker.controller.sticky_session=false
worker.controller.sticky_session_force=1
#worker.controller.sticky_session=1
然后配置conf\default文件夹下的httpd-vhosts.conf文件:
<VirtualHost *:80>
ServerName www.123ip.com
ProxyPass / http://www.123ip.com:8080/
ProxyPassReverse / http://www.123ip.com:8080/
DirectoryIndex index.jsp
</VirtualHost>
<VirtualHost *:80>
ServerName www.124ip.com
ProxyPass / http://www.124ip.com:9090/
ProxyPassReverse / http://www.124ip.com:9090/
DirectoryIndex index.jsp
</VirtualHost>
以上是apache相关配置过程。
Tomcat1配置:
打开tomcat1目录下的conf\server.xml,找到下面的节点内容:
<Server port="8005" shutdown="SHUTDOWN">
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
中间忽略N多注释
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8020"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="www.123ip.com" jvmRoute="tomcat1">
以上标注红色的配置,同一台机器的多个Tomcat不能重复使用以上端口,下半部分AJP的端口配置要和workers.properties的端口配置保持一致。请注意本次配置分别改了两个端口为8080和9090。
另创建Host节点:
<Host name="www.123ip.com" appBase="webapps" autoDeploy="true" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false" >
<Context docBase="." path="/www.123ip.com" reloadable="true"/>
</Host>
以上第一处是配置站点域名和站点内容路径,下面增加的内容是配置站点的根路径。
Tomcat2配置:
打开tomcat2目录下的conf\server.xml,找到下面的节点内容:
<Server port="8006" shutdown="SHUTDOWN">
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector port="9090" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
中间忽略N多注释
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8030"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="www.124ip.com" jvmRoute="tomcat2">
以上标注红色的配置,同一台机器的多个Tomcat不能重复使用以上端口,下半部分AJP的端口配置要和workers.properties的端口配置保持一致。请注意本次配置分别改了两个端口为8080和9090。
另创建Host节点:
<Host name="www.124ip.com" appBase="webapps" autoDeploy="true" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false" >
<Context docBase="." path="/www.124ip.com" reloadable="true"/>
</Host>
以上第一处是配置站点域名和站点内容路径,下面增加的内容是配置站点的根路径。
最后找到C:\Windows\System32\drivers\etc文件夹下的hosts文件,将其这行改为 127.0.0.1 www.123ip.com www.124ip.com
用eclipse把2个不同的项目分别部署在tomcat1和tomcat2上,然后从新启动apache和tomcat1和tomcat2,
打开浏览器输入http://www.123ip.com/test1/index.jsp 和 http://www.124ip.com/test2/index.jsp 测试是否显示不同的站点内容,到目前集成结束成功。
如果没有达到预期效果请检查一下几点配置:
conf\httpd.conf配置文件是否配置的两个Host是否配置了域名
host中JkMount /* controller配置tomcat对应的Service.xml中配置的域名是否一致
worker.properites中配置的tomcat实例端口是否和对应tomcat Service.xml文件中的AJP端口是否一致
tomcat Service.xml配置文件Host节点是否有<Context docBase="." path="" reloadable="true"/>配置内容
conf\default\httpd-vhosts.conf配置文件里 <VirtualHost *:80>节点下是够有DirectoryIndex index.jsp
分享到:
相关推荐
2. **虚拟主机配置**:为了在同一台服务器上部署多个网站(多站点场景),需要使用Apache的NameVirtualHost指令创建虚拟主机。在`httpd.conf`中,为每个站点定义一个VirtualHost,指定不同的ServerName(如`bbs.abc....
3. **虚拟主机**:可以在同一台服务器上运行多个不同的Web站点。 综上所述,《Tomcat与Java Web开发技术详解》这本书不仅全面覆盖了Tomcat的基本使用方法,还深入探讨了Java Web开发中的高级技术,对于希望深入了解...
WIN2003服务器操作系统下,IIS6.0与Tomcat集成的实现方法主要涉及将IIS6.0作为前端web服务器,而将Tomcat作为后端应用服务器。集成的核心是使用isapi_redirect.dll,该动态链接库(DLL)由Apache的Jakarta项目组开发...
5. **虚拟主机**:Tomcat6.0支持多个虚拟主机,这意味着可以在同一台服务器上部署多个独立的Web站点,每个站点有自己的域名或IP地址。 6. **连接器与协议**:Tomcat6.0使用不同的连接器处理不同的网络协议,如...
在这个配置文件中,你会看到每个worker代表一个Tomcat实例,包含连接器的主机名、端口、工作线程池等信息。 3. "jk2.reg":这可能是一个注册表文件,用于导入IIS和mod_jk模块之间的必要设置。在Windows系统中,...
9. **站点管理和虚拟主机**:如何在同一台服务器上托管多个网站,配置不同域名的虚拟主机。 10. **性能调优**:提供内存管理、并发连接数、请求处理速度等方面的优化建议。 11. **故障排查**:介绍常见问题的解决...
2. **多种产品和功能**:支持SSL技术,可以建立多个虚拟主机,满足不同域名和站点的需求。 3. **进程基础架构**:虽然这使得Apache在多处理器环境下效率略低,但在单处理器环境和中小规模应用中表现出色。 【Apache...
5. **虚拟主机支持**:允许在同一台服务器上托管多个域名。 6. **HTTP认证**:提供安全认证机制。 7. **集成Perl**:支持Perl脚本的集成。 8. **代理服务器功能**:内置代理服务器,支持HTTP代理和反向代理。 9. **...
IPTV环境搭建解决方案主要涉及的是构建一个基于Java、Tomcat、MySQL和OpenCMS的集成系统,以便实现多站点管理和跨终端访问的功能。以下是详细的知识点解析: 1. **Java JDK安装**:作为基础,首先需要安装Java JDK ...
这个过程涉及到选择合适的Web服务器软件、创建和管理Web站点、建立Web虚拟目录以及配置FTP站点。以下是这些关键知识点的详细说明: 1. **Web服务器软件的选择**: - **Microsoft IIS**:由微软开发,是Internet ...
- **多站点支持**: 在单一Jetty实例中配置多个虚拟主机。 - **域名绑定**: 如何配置域名绑定,实现多个网站的访问。 #### 十、管理服务器 - **服务器日志管理**: 如何配置日志记录,以便于故障排查。 - **实时状态...
9. **虚拟主机**:如何在Jetty上配置多个虚拟主机,实现多站点托管。 10. **管理服务器**:涵盖日志管理、请求日志、实时状态监控、关闭服务器以及JMX管理。 11. **配置JNDI**:介绍Java Naming and Directory ...
Jetty支持在同一台物理服务器上托管多个虚拟主机。通过配置`VirtualHost`和`VirtualHost.ContextHandler`,可以实现基于域名或IP地址的不同Web站点。 #### 十、管理服务器 **10.1 服务器日志管理** Jetty提供了...