Apache Tomcat Jk 多虚拟主机配置方法
准备工作:
1.Apache Server 2.2
2.mod_jk.so
3.Tomcat 7
步骤:
1.Copy mod_jk.so to Apache 2.2/modules/
2.modify Apache 2.2/config/httpd.conf
Add:
# module mod_jk config file
Include conf/extra/mod_jk.conf
Modify:# Virtual hosts
Include conf/extra/httpd-vhosts.conf
3.create config file in Apache 2.2/config/extra/ named as mod_jk.conf
Add:
#load module mod_jk.so is for Apache 2.2.x.
LoadModule jk_module modules/mod_jk.so#配置 mod_jk conf
#加载集群中的workers
JkWorkersFile conf/workers.properties
#指定jk的日志输出文件
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel info
<Location "/jkstatus">
Order deny,allow
AuthType Basic
AuthName "Valid Center"
AuthUserFile conf/jk_passwd
require valid-user
</Location>
4.create config file in Apache2.2/config/ named as workers.properties
Add:#worker列表
worker.list=LB_worker,jkstatus
#第一个worker的配置,名为worker_1
#tomcat的主机地址,如不为本机,请填写ip地址
worker.worker_1.host=localhost
#ajp13 端口号,对应tomcat配置文件server.xml中Connector port="8009",默认8009
worker.worker_1.port=8009
worker.worker_1.type=ajp13
#第二个worker的配置,名为worker_2
worker.worker_2.host=localhost
#ajp13 端口号,对应tomcat配置文件server.xml中Connector port="9009"
worker.worker_2.port=9009
worker.worker_2.type=ajp13#LB_worker,用于负载均衡分发的控制器
worker.LB_worker.type=lb
#重试次数
worker.LB_worker.retries=3
#指定负载的worker列表,用逗号分隔
worker.LB_worker.balance_workers=worker_1,worker_2 #可以单个Tomcat
#配置session会话是否为粘性
#这样负载均衡器lb就会尽量保持一个session,也就是使用户在一次会话中跟同一个Tomcat进行交互
worker.LB_worker.sticky_session=true
#如果sticky_session设为true时,此处一般设为false
worker.LB_worker.sticky_session_force=false
#设置运行状态的控制器
worker.jkstatus.type=status
5.create config file in Apache2.2/config/ named as web.propertiesAdd:/*=LB_worker
!/*.png=LB_worker
!/*.gif=LB_worker
!/*.jpg=LB_worker
!/*.js=LB_worker
!/*.css=LB_worker
!/*.zip=LB_worker/jkstatus=jkstatus
6.modify httpd-vhosts.conf at Apache2.2/config/extra/Modify:NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@baidu.com
DocumentRoot "C:/shopper-review"
ServerName www.baidu.com
ServerAlias baidu.com localhost 127.0.0.1
ErrorLog "logs/dummy-host.baidu.com-error.log"
CustomLog "logs/dummy-host.baidu.log" common
JkMountFile conf/web.properties
</VirtualHost>
7.modify Tomcat7/conf/server.xmlModify:<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker_1">
Add:<Context path="" docBase="C:\myweb" reloadable="true" crossContext="true"></Context>
between <HOST></HOST> TAG.Restart Apache Serverstart tomcat ServerSuccess!多站点设置方法:1.modify tomcat7/conf/server.xmlModify:<Host name="ww.a.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">2.More Domain SettingAdd:<Alias>www.bbb.com</Alias>
禁止别人绑定IP访问/禁止IP访问:1.Modify /apache/conf/extra/httpd_vhost.confAdd First in file:<VirtualHost *:80>
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>禁止Tomcat 8080端口访问:1.Modify tomcat7/conf/server.xmlDelete:<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
GZIP config see:http://cancait.blog.163.com/blog/static/2133574420122911151331/