1.需要下载及安装的软件
安装IIS 6.0 ,安装JDK及配合环境变量等,下载Tomcat6,下载用于集成IIS6和Tomcat6的Apache Tomcat Connector ,网址在下面:
http://tomcat.apache.org/download-connectors.cgi
我们要下载的是JK 1.2 的编译后的文件(要源代码等没用),就只下载JK 1.2 Binary Releases 就行了,根据操作系统的类型,可以选择下载32位或64位的版本,我的机器是64位CPU,但是安装的是32位的2003,所以下载32位的isapi_redirect.dll
注意:用解压缩版的tomcat
2. 需要创建的配置文件
将isapi_redirect.dll放到tomcat的conf目录中,并在目录中建立以下几个文件
workers.properties文件
文件内容:
**************************************************************
workers.tomcat_home=C:\temp\apache-tomcat-6 #让mod_jk模块知道TOMCAT
workers.java_home=C:\Program Files\Java\jdk1.6 #让mod_jk模块知道JDK
ps=\ #指定文件路径分隔符
worker.list=ajp13
worker.ajp13.port=8009 #工作端口
worker.ajp13.host=localhost #TOMCAT服务器地址
worker.ajp13.type=ajp13 #协议类型
worker.ajp13.lbfactor=1 #负载平衡因数
worker.list=jkstatus
worker.jkstatus.type=status
**************************************************************
uriworkermap.properties文件
文件内容:
******************************************************
/www.ovtch.cn/*=ajp13 # ajp13与文件workers.properties中一致
!/ www.ovtch.cn /*.asp=ajp13
!/ www.ovtch.cn /*.html=ajp13
/ www.ovtch.cn /*.jsp=ajp13
/ www.ovtch.cn /*.do=ajp13
/ www.ovtch.cn /services*=ajp13
/ www.ovtch.cn /*.action=ajp13
/ www.ovtch.cn /servlet*=ajp13
/ www.ovtch.cn /dwr/*=ajp13
/ www.ovtch.cn /private/admin/jkstatus=jkstatus
**************************************************************
***附加:
如果我们要用到集群的话
workers.properties文件里配置,再加一个ajp2,例如:
workers.tomcat_home=D:\apache-tomcat-
workers.java_home=D:\Java\jdk1.6.0_10 #让mod_jk模块知道JDK
ps= \ #指定文件路径分隔符
worker.list=ajp1,ajp2
worker. ajp1.host=localhost #TOMCAT服务器地址
worker. ajp1.port=8009 #工作端口
worker. ajp1.type=ajp13 #类型
worker. ajp1.lbfactor=1 #负载平衡因数
worker. ajp2.host=otherhost #第二个TOMCAT的服务器地址
worker. ajp2.port=8009 #第二个TOMCAT工作端口
worker. ajp2.type=ajp13 #第二个TOMCAT类型
worker. ajp2.lbfactor=1 #第二个TOMCAT负载平衡因数
worker.list=jkstatus
worker.jkstatus.type=status
uriworkermap.properties文件
文件内容:
/www.ovtch.cn/*= ajp1 # ajp1与文件workers.properties中一致
!/ www.ovtch.cn /*.asp= ajp1
!/ www.ovtch.cn /*.html= ajp1
/ www.ovtch.cn /*.jsp= ajp1
/ www.ovtch.cn /*.do= ajp1
/ www.ovtch.cn /services*= ajp1
/ www.ovtch.cn /*.action= ajp1
/ www.ovtch.cn /servlet*= ajp1
/ www.ovtch.cn /dwr/*= ajp1
/ www.ovtch.cn /private/admin/jkstatus=jkstatus
/www.happyzs.net/*=ajp2 #ajp2与文件workers.properties中一致
!/ www.happyzs.net /*.asp=ajp2
!/ www.happyzs.net /*.html=ajp2
/ www.happyzs.net /*.jsp=ajp2
/ www.happyzs.net /*.do=ajp2
/ www.happyzs.net /services*=ajp2
/ www.happyzs.net /*.action=ajp2
/ www.happyzs.net /servlet*=ajp2
/ www.happyzs.net /dwr/*=ajp2
/ www.happyzs.net /private/admin/jkstatus=jkstatus
多个虚拟主机时需要写上虚拟主机的主机头信息,上面的虚拟主机中, www.ovtch.cn站点除了asp及静态的html文件以外,其它的请求全部由tomcat处理,实际应用时可以考虑将图片、CSS、html等静态的文件由IIS负责直接发给客户端,tomcat只负责处理jsp,servlet等。
3.改Tomcat的配置文件,增加虚拟主机信息
修改文件为conf目录中的server.xml文件,增加内容示例:
<Host name="www.ovtch.cn" appBase="D:\\ovtch\\webapps\\ovtch" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="ovtch_vm_log." suffix=".txt" pattern="common" resolveHosts="false"/>
</Host>
注释:在D盘中ovtch(项目名称)文件中建立一个ROOT文件(将项目放在其中)
4.增加isapi_redirect.dll需要用到的注册表信息
用记事本建立一个tomcat.reg文件,内容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]
"log_file"="D:\\ovtch\\logs\\isapi.log" # ovtch就是tomcat
"log_level"="debug"
"worker_file"="D:\\ovtch\\conf\\workers.properties"
"worker_mount_file"="D:\\ovtch\\conf\\uriworkermap.properties"
"tomcat_start"="D:\\ovtch\\bin\\tomcat.bat start"
"tomcat_stop"="D:\\ovtch\\bin\\tomcat.bat stop"
"extension_uri"="/jakarta/isapi_redirect.dll"
注意上面的所有涉及到tomcat的路径都要换成实际部署时的路径信息,目录的分隔用“\\”表示,编辑好了以后双击导入注册表。
5.在IIS中添加W eb服务扩展
打开IIS信息服务管理器,在左侧的功能树中选中“WEB服务扩展”,在屏幕右侧的空白界面中点鼠标右键,选择“增加一个新的WEB服务扩展”,在扩展名输入框中输入“jakarta”,在“要求的文件”处选择我们从tomcat官方网站上下载的“isapi_redirect.dll”文件,同时选中“设置扩展状态为允许”复选框。正确设置后的界面如下图:
6.在IIS中增加多个虚拟主机
依次在IIS中建立虚拟主机,端口号全部使用80即可,这个和集成没有什么关系,最关键的一点要在每个虚拟主机中增加主机头信息(与tomcat中增加的虚拟主机相同)
如下图:
虚拟主机建立完成后,可以先访问一下网站的静态html文件或图片资源等,看看IIS中的虚拟主机工作是否正常。
7.增加isapi筛选器
在虚拟主机站点上点鼠标右键,选“属性”,选“ISAPI筛选器”页,点“增加”,筛选器名称输入“jakarta”,可执行文件选tomcat的conf目录中的iaspi_redirect.dll文件。
8.增加jakarta虚拟目录
在虚拟主机站点上点鼠标右键,选“新建”-》“虚拟目录”,别名为“jakarta”,目录为tomcat的conf目录,最后要选中“读取”和“执行程序”权限。
9.调试与测试
如果一切正常,现在可以访问一下JK的状态页看看效果了
要想测试是不是真的IIS和tomcat各司其职,可以建立一个简单的asp文件,在iis的web服务扩展中打开ASP扩展进行测试,asp文件内容:
<%@ LANGUAGE = VBScript %>
<HTML>
<TITLE>
Hello World
</TITLE>
<BODY>
<%
for i=1 to 5
response.write "<font size=" & i & ">hello world</font><br>"
next
%>
</BODY>
</HTML>
其它注意事项:调试无问题以后需要修改isapi_redirect.dll的log_level,上面写的是debug,这种情况下会产生大量的调试日志数据,在实际生产环境中运行时建议将log_level调高。如果一直调试不成功,可以试着修改tomcat的conf目录权限为everyone读取,tomcat的logs目录权限为everyone完全控制,不过这样貌似不安全了!
注意:
1. C:\WINDOWS\system32\drivers\etc\Host 添加 (127.0.0.1 http://www.ovtch.cn/)
2. 修改tomcat配置文件时不要用写字板修改