iis tomcat 整合
前几天,自己花了半个月 辛辛苦苦的搞了个网站, 到了发布的时候,才发现服务器的80 端口被 iis占用了。如果 停掉iis ,那么 也只能给1个tomcat。而我的服务器上跑了多个tomcat,于是决定 把iis和tomcat整合使用。需要使用tomcat的连接器,介绍见http://tomcat.apache.org/tomcat-4.1-doc/config/connectors.html
操作系统WindowsServeer2003,tomcat-5.0.28,j2sdk1.4.2_08
测试环境安装路径:
需要有连接器,在本机目录D:\01_XZY\01_StudyNotes\03_Java\03_JAVA常用类包\IIS+Tomcat连接器\JK-推荐
也可以从网上下载http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/ ,目前最新的是isapi_redirect-1.2.9.dll
这里要保证IIS和Tomcat独立都能正常运行,如IIS的http://127.0.0.1和tomcat的http://127.0.0.1:8080/jsp-examples/都能访问
本节不解释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
"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执行
最后应为
ü■7重启IIS和Tomcat进行测试
重启IIS和Tomcat。
这时先看看IIS默认网站的IsApi的tomcat是否为绿色
如果不是(好像刚刚配置万重启后总不是绿色)则访问http://127.0.0.1:8080 http://127.0.0.1:8080/jsp-examples/ http://127.0.0.1 把IIS和Tomcat的都访问访问,之后再看就是绿色的了???,之后即使重启计算机也是绿色的,如果有问题在事件查看器中可以看到筛选器的错误说明
绿色后就可以通过IIS访问Tomcat了,包括Tomcat的虚拟路径也可以。
IIS: http://127.0.0.1/
tomcat:http://127.0.0.1/index.jsp
注意只有在workers.properties中描述的uri才能被转发到tomcat上
Ø(16)、IIS+Tomcat(JK2 不推荐)07-11-11
操作系统WindowsServeer2003,tomcat-5.0.28,j2sdk1.4.2_08
测试环境安装路径:
需要有连接器,在本机目录D:\01_XZY\01_StudyNotes\03_Java\03_JAVA常用类包\IIS+Tomcat连接器\JK2-不推荐
也可以从网上下载(http://archive.apache.org/dist/tomcat/tomcat-connectors/jk2/binaries/win32/jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip)。
这里要保证IIS和Tomcat独立都能正常运行,如IIS的http://127.0.0.1和tomcat的http://127.0.0.1:8080/jsp-examples/都能访问
在网站http://tomcat.apache.org/tomcat-4.1-doc/config/connectors.html看到jk2已经不推荐使用了,现在推荐的是jk,很奇怪,为什么jk2不推荐反而推荐jk。
本节不解释Tomcat的配置和运行。
ü■1在tomcat的bin目录下新建目录win32\i386
把连接器中的isapi_redirector2.dll拷贝到这个目录中
ü■2在tomcat的conf目录中创建2个文件
jk2.properties:这个文件默认就存在,如果不存在则创建,内容如下:
————————————————————————————————————————
## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED
## WHEN YOU EDIT THE FILE.
## COMMENTS WILL BE _LOST_
## DOCUMENTATION OF THE FORMAT IN JkMain javadoc.
# Set the desired handler list
# handler.list=apr,request,channelJni
#
# Override the default port for the socketChannel
# channelSocket.port=8019
# Default:
# channelUnix.file=${jkHome}/work/jk2.socket
# Just to check if the the configis working
# shm.file=${jkHome}/work/jk2.shm
# In order to enable jni use any channelJni directive
# channelJni.disabled = 0
# And one of the following directives:
# apr.jniModeSo=/opt/apache2/modules/mod_jk2.so
# If set to inprocess the mod_jk2 will Register natives itself
# This will enable the starting of the Tomcat from mod_jk2
# apr.jniModeSo=inprocess
————————————————————————————————————————
workers2.properties:这个文件没有,需要创建,内容如下:蓝色部分要根据实际情况改变
———————————————————————————————————————
info=Shared memory file. Required for multiprocess servers
file=D:\JAVA\TOMCAT5\tomcat-5.0.28\work\jk2.shm
size=1000000
info=Ajp13 worker, connects to tomcat instance using AJP 1.3 protocol
tomcatId=www.hggkzx.com:8009
————————————————————————————————————————
jk2.shm会在IIS设置好筛选器启动后自动创建,之类的说明会在■8中说明,这个设置会促使筛选器把所有的地址都通过tomcat来处理,这个文件修改后必须重启IIS后才能生效
ü■3导入注册表文件xzy.reg
内容如下:
————————————————————————————————————————
Windows Registry Editor Version 5.00
"workersFile"="D:\\JAVA\\TOMCAT5\\tomcat-5.0.28\\conf\\workers2.properties"
"extensionUri"="/jakarta/isapi_redirector2.dll"
"logLevel"="debug"
"serverRoot"="D:\\JAVA\\TOMCAT5\\tomcat-5.0.28"
————————————————————————————————————————
双击运行这个文件,导入注册表中
ü■4设置IIS默认网站的IsApi筛选器
指向文件D:\JAVA\TOMCAT5\tomcat-5.0.28\bin\win32\i386\isapi_redirector2.dll
确定后是这个样子:
保存设置
ü■5在IIS中创建虚拟目录jakarta
jakarta是一个规定的名字,必须这么创建,这个虚拟目录要指向isapi_redirector2.dll所在的目录,并且设置为可执行IsApi
ü■6在IIS的服务器扩展中添加允许isapi_redirector2.dll执行
最后应为
ü■7重启IIS和Tomcat进行测试
重启IIS和Tomcat。
这时先看看IIS默认网站的IsApi的tomcat是否为绿色
如果不是(好像刚刚配置万重启后总不是绿色)则访问http://www.hggkzx.com:8080 http://www.hggkzx.com:8080/jsp-examples/ http://127.0.0.1 把IIS和Tomcat的都访问访问,之后再看就是绿色的了???,之后即使重启计算机也是绿色的,可以看到jk2.shm已经被创建了,如果有问题在事件查看器中可以看到筛选器的错误说明
绿色后就可以通过IIS访问Tomcat了,包括Tomcat的虚拟路径也可以。
IIS: http://www.hggkzx.com/
tomcat:http://www.hggkzx.com/index.jsp
页:
[1]