之前试过很多次,一直有问题,要么请求根本转发不到tomcat服务器处理,要么连最基本的PHP请求都无法转交给apache服务器处理,很纠结。。
今天一鼓作气,准备再试一下,在网上GOOGLE到一篇“保证有效”的文章,大体看了下,感觉跟之前看到的没有什么区别,但是比官方的文档详细很多。于是就按步骤试了一下,一步一步地调,{zh1}居然成功了!~~可喜可贺呀。。
下面是这篇文章的摘录,顺便感谢一下作者:
? (15)、IIS+Tomcat(JK 推荐 07-11-11)
需要使用tomcat的连接器,介绍见
操作系统WindowsServeer2003,tomcat-5.0.28,j2sdk1.4.2_08
测试环境安装路径:
需要有连接器,在本机目录D:\01_XZY\01_StudyNotes\03_Java\03_JAVA常用类包\IIS+Tomcat连接器\JK-推荐
也可以从网上下载 ,目前{zx1}的是isapi_redirect-1.2.9.dll
这里要保证IIS和Tomcat独立都能正常运行,如IIS的和tomcat的都能访问
本节不解释Tomcat的配置和运行。
ü ■1在tomcat的bin目录下新建目录jk\
把isapi_redirect-1.2.9.dll拷贝到这个目录下
据网上说这个也可能有权限问题,不过我测试时没有给它设置特别的权限。
ü ■2在tomcat的conf目录中创建2个文件
workers.properties
————————————————————————————————————————
workers.tomcat_home=D:\JAVA\TOMCAT5\tomcat-5.0.28
workers.java_home=D:\JAVA\TOMCAT5\j2sdk1.4.2_08
ps=\
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
————————————————————————————————————————
uriworkermap.properties:说明了符合哪些条件的uri才能被转发到tomcat中
————————————————————————————————————————
/*=worker1
————————————————————————————————————————
可能的设置有:
/*=worker1 #所有访问都转发到tomcat中
/*.jsp=worker1 #所有*.jsp的才向tomcat转发
/jsp-examples/*=worker1 #所有/jsp-examples/*的才向tomcat转发
!/*.gif=worker1 #所有的gif文件都不向tomcat转发,而由IIS处理,注意这表示是所有的而不仅仅是根下的
一个办法:可以把IIS的根和Tomcat的根指向同一个目录(如果有虚拟目录则IIS和Tomcat中都要建立上,并且指向相同的目录),只允许/*.jsp=worker1存在,这样就实现了,所有的*.jsp由tomcat处理,其它的都由IIS处理。
ü ■3导入注册表文件xzy.reg
内容如下:
————————————————————————————————————————
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]
"extension_uri"="/jakarta/isapi_redirect-1.2.9.dll"
"log_file"="D:\\JAVA\\TOMCAT5\\tomcat-5.0.28\\logs\\isapi.log "
"worker_file"="D:\\JAVA\\TOMCAT5\\tomcat-5.0.28\\conf\\workers.properties"
"worker_mount_file"="D:\\JAVA\\TOMCAT5\\tomcat-5.0.28\\conf\\uriworkermap.properties"
"log_level"="realease"
————————————————————————————————————————
双击运行这个文件,导入注册表中
日志被存放在 ,如果把"log_level"="realease"改成"log_level"="debug"日志里会增长的很快,里面写了转发的情况
ü ■4设置IIS默认网站的IsApi筛选器
指向文件D:\JAVA\TOMCAT5\tomcat-5.0.28\bin\jk\isapi_redirect-1.2.9.dll
确定后是这个样子:
保存这些设置
ü ■5在IIS中创建虚拟目录jakarta
jakarta是一个规定的名字,必须这么创建,这个虚拟目录要指向isapi_redirect-1.2.9.dll所在的目录,并且设置为可执行IsApi
ü ■6在IIS的服务器扩展中添加允许isapi_redirect-1.2.9.dll执行
{zh1}应为
ü ■7重启IIS和Tomcat进行测试
重启IIS和Tomcat。
这时先看看IIS默认网站的IsApi的tomcat是否为绿色
如果不是(好像刚刚配置万重启后总不是绿色)则访问 把IIS和Tomcat的都访问访问,之后再看就是绿色的了???,之后即使重启计算机也是绿色的,如果有问题在事件查看器中可以看到筛选器的错误说明
绿色后就可以通过IIS访问Tomcat了,包括Tomcat的虚拟路径也可以。
IIS: http://127.0.0.1/
tomcat: http://127.0.0.1/index.jsp
注意只有在workers.properties中描述的uri才能被转发到tomcat上
This post has been viewed 26 times.