设为首页 收藏本站
查看: 1155|回复: 0

[经验分享] apache整合多tomcat

[复制链接]

尚未签到

发表于 2016-12-31 08:26:21 | 显示全部楼层 |阅读模式
  1. 软件准备

1.1 集成软件清单


apache-httpd:版本2.2.19,访问端口80

mod-jk:版本1.2.31

tomcat1:版本7.0,访问域名http://tomcat1.com


tomcat2:版本7.0,访问域名http://tomcat2.com



1.2 下载软件


下载tomcat,地址:http://tomcat.apache.org


下载apache-httpd,地址:http://httpd.apache.org


下载mod-jk,地址:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries


注:apache-httpd和mod-jk的大版本号需匹配(2.0版和2.2版)

1.3. 安装软件


安装tomcat:下载解压版,解压即可

安装apache-httpd:linux版需编译安装,window版直接执行exe安装文件

将下载的mod_jk-1.2.31-httpd-2.2.x.so文件复制到“[apache-httpd安装路径]/modules”目录

2. 配置

2.1 tomcat配置

(1) 修改tomcat端口号


目的:确保多tomcat在同一台机器上启动时,端口不会冲突

操作:修改文件“[tomcat安装目录]/conf/server.xml”文件的如下内容中的端口号,确保tomcat1和tomcat2的端口号不一样即可

<Server port="8005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1" ……
<Connector port="8009" protocol="AJP/1.3" ……
  (2) 配置jvmRoute


目的:apache通过jvm名称来定位tomcat

操作:修改文件“[tomcat安装目录]/conf/server.xml”文件的如下内容,配置tomcat的jvmRoute


<Engine name="Catalina" defaultHost="localhost">
  修改后(例:tomcat1的jvmRoute为jvm1,tomcat2的jvmRoute为jvm2)

<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
  
2.2 apache配置

(1) 创建mod-jk.conf文件


目的:配置那些url请求会通过mod-jk转发

操作:创建“[apache安装目录]/conf/mod-jk.conf”文件,文件内容如下

LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.19.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkShmFile logs/mod_jk.shm
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
#JkMount /* controller
  (2) 创建workers.properties


目的:mod-jk定位到tomcat的信息

操作:创建“[apache安装目录]/conf/workers.properties”文件,文件内容如下

worker.list=controller,jvm1,jvm2
#========jvm1========
worker.jvm1.type=ajp13
worker.jvm1.port=8009
worker.jvm1.host=127.0.0.1
worker.jvm1.lbfactor=1
#========jvm2========
worker.jvm2.type=ajp13
worker.jvm2.port=8019
worker.jvm2.host=127.0.0.1
worker.jvm2.lbfactor=1
#========controller========
worker.controller.type=lb
worker.controller.balance_workers=jvm1,jvm2
worker.controller.sticky_session=1
  (3) 创建mount.properties


目的:转发url与tomcat jmvRoute的对应关系

操作:在“[apache安装目录]/conf”目录创建mount1.properties和mount2.properties文件

mount1.properties文件内容如下

/*=jvm1
  mount2.properties文件内容如下

/*=jvm2
  (4) 修改httpd.conf文件


目的:配置apache虚拟主机,实现域名转发

操作:修改“[apache安装目录]/conf/httpd.conf”文件,追加如下内容

NameVirtualHost *:80
<VirtualHost *:80>
ServerName tomcat1.com
JkMountFile conf/mount1.properties
</VirtualHost>
<VirtualHost *:80>
ServerName tomcat2.com
JkMountFile conf/mount2.properties
</VirtualHost>
include conf/mod_jk.conf
  
3. 操作


配置完毕,重启apache和tomcat

发送http://tomcat1.com
或http://tomcat1.com
请求,apache会接收到该请求,然后根据域名转发到对应的tomcat

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-321789-1-1.html 上篇帖子: Apache的proxy指令 下篇帖子: 安装apache和php报错
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表