首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

2003 停,IIS 6 , Tomcat 5 整合!百分求解!不够再加

2011-12-20 
2003 下,IIS 6 , Tomcat 5 整合!百分求解!不够再加!操作系统Windows2003IIS版本6.0Tomact版本5或5.5求此平

2003 下,IIS 6 , Tomcat 5 整合!百分求解!不够再加!
操作   系统   Windows   2003

IIS   版本   6.0

Tomact   版本   5   或   5.5

求此平台下两者的整合,做虚拟主机用,可支持Servlet   ,不出现因为整合而出现的对某些东西不支持的问题。

请有经验的大侠不吝赐教!万分感谢!



[解决办法]
配置要求:IIS(win2000 server 自带)、Java 2 SDK 1.4.2 (或更高版本)、Tomcat Web Server 连接器、Tomcat 5.0.24 (或更高版本)
  
  准备
  
  一、Java 2 SDK 1.4.2 (或更高版本)
  
  1、 www.java.sun.com/downloads/ 网站中下载,选择
  2、 Java 2 Platform, Standard Edition (J2SE)
  3、 在下拉列表框中选择All platforms
  4、 J2SE v 1.4.2_04 SDK includes the JVM technology 下选择
  5、 Download J2SE SDK
  6、 选择accept后下载Windows Offline Installation, Multi-language    (j2sdk-1_4_2_04-windows-i586-p.exe, 49.36 MB) 版本
  
  二、Tomcat 5.0.24 (或更高版本)
  
  1、http://jakarta.apache.org/site/binindex.cgi下载
  2、在Downloads中选择Binaries
  3、在Tomcat 5.0.25 KEYS 中选择5.0.25 exe PGP MD5 下载
  
  三、Tomcat Web Server 连接器
  
  1、http://jakarta.apache.org/site/binindex.cgi下载
  2、在Downloads中选择Binaries
  3、在Tomcat Web Server Connectors KEYS 中选择
  4、JK 2
  JK 2 Binary Releases
  5、出现Index of/dist/jakarta/tomcat-connectors/jk2/binaries
  界面,选择win32/然后选择下载
  jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip
  注意 这个目录列表显示的文件名称被截断,所以需要观察浏览器状态栏中的提示,确认你准备下载的文件应该是以\ "...iis.zip\ "为结尾的
  
  安装
  
  一、Java 2 SDK
  
  运行j2sdk-1_4_2_04-windows-i586-p.exe 按照提示安装(可以更改安装路径到你习惯的地方)。这里选择
  d:\\jdk(jdk为自己新建的文件夹)
  
  二、Tomcat 5
  
  运行jakarta-tomcat-5.0.24.exe 按照提示安装(可以更改至其它路径)。
  这里选择d:\\tomcat5.0(tomcat5.0为自己新建的文件夹)
  选择本地机器的jdk路径,一般情况下,安装文件会自动搜索并显示,如果没有正确显示,也可以手动更改
  成功安装后,程序会提示启动tomcat并查看readme文档。
  注意: 启动Tomcat之前要确定系统没有其它服务已经占用8080端口(Tomcat默认端口)和8009端口( Tomcat\ 's AJP13 连接器端口)
  Tomcat正常启动后会在系统栏加载图标
  注意: tomcat5.0以下的版本必须设初始密码,tomcat5.0以上的可以不设
  
  三、Tomcat JK2 IIS 连接器
  
  解压缩jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip得到bin conf doc三个文件夹,进入\\bin\\后可见isapi_redirector2.dll。
  剪切/复制isapi_redirector2.dll 文件到Tomcat\ 's bin\\目录中
  新建目录win32\\i386\\ 并粘贴isapi_redirector2.dll。
  记住这个路径,稍后配置IIS的时候还会用到。这个路径不是系统要求的,可改变!
  现在可以删除jakarta-tomcat-connectors-jk2.0.4-win32-IIS目录,这里面的文件已经没用了。实际上在jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip中我们只用到了isapi_redirector2.dll一个文件
  
  设置
  
  一、tomcat
  
  进入 Tomcat\ 's conf\\ 文件夹.
  要支持 JK2 连接器, 你可能需要修改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
  # www.knowsky.com
  # Override the default port for the socketChannel
  # channelSocket.port=8019
  # Default:
  # channelUnix.file=${jkHome}/work/jk2.socket
  # Just to check if the the config is 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
  request.tomcatAuthentication=false
  
  二、设置环境变量tomcat_home。
  
  指向tomcat的安装目录d:\\Tomcat 5.0下。注意要求系统有可用JAVA_HOME环境变量
  
  创建workers2.properties到d:\\Tomcat 5.0\\conf下。workers2.properties内容文件如下:


  [shm]
  file=\ "d:/Tomcat 5.0/logs/jk2.shm\ "
  size=1048576
  
  # Example socket channel, override port and host.
  [channel.socket:localhost:8009]
  port=8009
  host=127.0.0.1
  
  # define the worker
  [ajp13:localhost:8009]
  channel=channel.socket:localhost:8009
  
  # Uri mapping
  [uri:/*.jsp]
  [uri:/servlet/*]
  worker=ajp13:localhost:8009
  
  三、Tomcat IIS 连接器
  
  你已经放置isapi_redirector2.dll在你的路径下,本例子中是
  d:\\Tomcat 5.0\\bin\\win32\\i386
  现在需要添加一些必要的注册信息到注册表,redirector被IIS调用时会读到。建立一个.reg文件
  
  Windows Registry Editor Version 5.00
  [HKEY_LOCAL_MACHINE\\SOFTWARE\\Apache Software Foundation\\Jakarta Isapi Redirector\\2.0]
  \ "workersFile\ "=\ "d:\\\\Tomcat 5.0\\\\conf\\\\workers2.properties\ "
  \ "extensionUri\ "=\ "/jakarta/isapi_redirector2.dll\ "
  \ "logLevel\ "=\ "debug\ "
  \ "serverRoot\ "=\ "d:\\\\Tomcat 5.0\\\\\ "
  在记事本中写入上面的文字,并保存为 reg.reg
  双击.reg文件,在注册表中的内容将会添加成功
  HKEY_LOCAL_MACHINE\\SOFTWARE\\Apache Software Foundation\\Jakarta Isapi Redirector\\2.0中可以看到。
  
  四、给Tomcat配制虚拟主机多个站点。
  
  新建两个文件夹d:\\tomcat1和d:\\tomcat2。在两个文件夹里面再分别建立一个ROOT目录。
  
  记事本打开d:\\Tomcat5.0\\conf\\server.xml文件。在文件server.xml中找到
  标签;在标签之后新建如下信息:
  
  www.tomcat1.com\ " appBase=\ "d:\\tomcat1\ " >
  
  www.tomcat2.com\ " appBase=\ "d:\\tomcat2\ ">
  
  主要就是新建两个虚拟主机www.tomcat1.com和www.tomcat2.com。站点目录分别是d:\\tomcat1和d:\\tomcat2。d:\\tomcat1\\ROOT和d:\\tomcat2\\ROOT。分别是两个站点的主目录。也建立了日志文件和访问日志文件。
  
  五、打开tomcat的/servlet/*的映射。
  
  记事本打开d:\\Tomcat 5.0\\conf\\web.xml文件。
  把
  
  invoker
  
  org.apache.catalina.servlets.InvokerServlet
  
  
  debug
  0
  
  2
  
  和
  
  invoker
  /servlet/*
  
  这两个代码段的注释去掉,使其生效。
  
  六、在iis中建立两个站点tomcat1和tomcat2。
  
  建立时注意主机头分别设成www.tomcat1.com和www.tomcat2.com。主目录分别设成d:\\tomcat1\\ROOT和d:\\tomcat2\\ROOT。两个站点分别建立名称为jakarta的ISAPI筛选器。可执行文件都指向d:\\Tomcat 5.0\\conf\\connector\\isapi_redirector2.dll。
  
  两个站点分别新建虚拟目录别名都填:jakarta,目录选择指向:d:\\Tomcat 5.0\\bin\\win32\\i386在\ "执行(例如ISAPI应用程序或CGI)\ "一项打上勾,完成。
  
  IIA筛选器
  
  再进行筛选器的选择时,选用jakarta可执行文件为d:\\Tomcat 5.0\\bin\\win32\\i386
  
  建筛选器所需要的虚拟目录
  
  选择需要加载Tomcat服务站点,右键选择新建,再选择虚拟目录。创建虚拟目录,别名为jakarta。注意这个名字是固定值,不要拼写错误!指定目录为isapi_redirector2.dll所在目录. 本例子中是 d:\\Tomcat 5.0\\bin\\win32\\i386
  
  重启tomcat和iis。
  
  在tomcat1和tomcat2文件夹下最好放一个index.htm和一个index.jsp文件.方便测试。


[解决办法]
不错
[解决办法]
不错,留名以后试试
[解决办法]
网上搜一大把....
我整合成功的参考:

win2003+IIS6+Tomcat5+jk整合
整合组合是:Win2003+IIS6+Tomcat5+jk。如果您要整合的系统不是这个组合,这篇文章可能对你没有没有什么帮助,但是我极力劝大家采用这个组合,甚至是相同的版本,因为从别人和自己的经验来看,很多环境的配置或程序的运行都和所运行程序的版本有很大关系,特别是 Tomcat,Mysql,Apache,linux之类。这就是为什么有的系统至今都是用的Apache1.3 tomcat4.0,也是为什么好的开发团队都需要一整套的开发环境配置管理。和我这相同的配置,严格采用下面的架设步骤我都不敢保证你能整合成功,更别说其他版本了。
Windows2003 和IIS6大家应该都是一样的.网上有的文章也介绍XP或者IIS5的整合.我觉得没有必要在XP的系统上整个IIS,装IIS拿来做服务器的,做服务器就用服务器的操作系统.我这里Tomcat的版本是5.0.28算是比较稳定的一个版本,没有采用jk2而采用jk是因为Apache已经明确声明不再对 jk2支持,想起这点就想起几年前用jk2整合Apache和Tomcat了,当时说jk2比jk怎么怎么好,看来这世上没有一件事情是真的.jk的版本是最新的1.2.20,没有用过其他版本,而且现在Apache上面也下不到其他版本了.

整合步骤:
如果你只想架设服务器而不想考虑其中细节问题,请尝试按照下面的步骤整合。如果你按照下面的步骤来了而且成功那么恭喜你,如果没有成功也很正常,可以看看后面的“要注意的问题”。在这里我们统一架设Tomcat的安装目录为D:\Tomcat5.0,新建的站点为www.crazycow.cn,新建的虚拟目录为blog。服务器上有一个内容为空的目录H:\Inetpub\www.crazycow.cn,还有一个目录为H:\Inetpub\ blog.crazycow.cn,这是WEB应用的物理位置,其下面有个简单的test.jsp文件,只是用来打印当前时间。



1,为IIS写注册表
打开注册表编辑器:regedit,选中 "HKEY_LOCAL_MACHINE\SOFTWARE ",新建项 "Apache Software Foundation ",然后选中 "Apache Software Foundation ",再新建项 "Jakarta Isapi Redirector ",然后选中 "Jakarta Isapi Redirector ",再新建项 "1.0 ",然后再选中 "1.0 ",在这一项中新建以下5个字符串值,名称和值分别为(不包括等号分界符,下同):
========================================================================
extension_uri=/jakarta/isapi_redirect.dll
worker_file=D:\Tomcat5.0\conf\workers.properties
worker_mount_file=D:\Tomcat5.0\conf\uriworkermap.properties
log_file=D:\Tomcat5.0\logs\isapi.log
log_level=info
========================================================================
如果你觉得麻烦,请新建文本文件,输入以下内容,保存并更名为jakarta.reg文件,双击导入注册表,也可以达到和上面一样的效果.
========================================================================
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation]

[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector]

[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]
"extension_uri "= "/jakarta/isapi_redirect.dll "
"worker_file "= "D:\\Tomcat5.0\\conf\\workers.properties "
"worker_mount_file "= "D:\\Tomcat5.0\\conf\\uriworkermap.properties "
"log_file "= "D:\\Tomcat5.0\\logs\\isapi.log "
"log_level "= "info "
========================================================================
2,建立配置文件
按照注册表里所写的,在D:\Tomcat5.0\conf目录下建立两个配置文件,workers.properties和uriworkermap.properties其内容分别为:
workers.properties的内容:
========================================================================
worker.list=ajp13

worker.ajp13.type=ajp13
worker.ajp13.host=www.crazycow.cn
worker.ajp13.port=8009
========================================================================
uriworkermap.properties的内容:
========================================================================
/*.jsp=ajp13
/*.do=ajp13
========================================================================
3,为jk建立物理目录
从Apache的网站上下载jk的1.2.20版本,实际上现在就只有一个isapi_redirect.dll文件。在 D:\Tomcat5.0\bin目录下建立新目录jakarta,将isapi_redirect.dll复制到里面。
4,建立新网站
打开IIS管理器,在左侧网站一栏新建网站:www.crazycow.cn,其目录指向上面提到过的空目录H:\Inetpub\www.crazycow.cn,让网站有执行(如ISAPI应用程序或CGI)的权限
5,设置筛选器
在IIS管理器左侧网站下面选中新建的网站www.crazycow.cn,右键选择属性,在ISAPI筛选器标签页添加筛选器,名字为jakarta,路径为isapi_redirect.dll的路径名,即D:\Tomcat5.0\bin\jakarta\isapi_redirect.dll。如果成功重新进入属性页,则该新建的筛选器会有一个绿色向上箭头,优先级为高,这说明jk模块加载成功。
6,为jk建立虚拟目录
选中网站www.crazycow.cn,新建虚拟目录,别名为jakarta,路径为D:\Tomcat5.0\bin\jakarta,使其有执行(如ISAPI应用程序或CGI)的权限。
7,为自己的应用建立虚拟目录
选中网站www.crazycow.cn,新建虚拟目录,别名为blog,路径为H:\Inetpub\blog.crazycow.cn,使其有执行(如ISAPI应用程序或CGI)的权限。
8,新建应用程序扩展
在IIS管理器左侧网站下面选中Web服务扩展,添加一个新的Web服务扩展,扩展名为jakarta,添加要求得文件为D:\Tomcat5.0\bin\jakart\isapi_redirect.dll,并设置扩展状态为允许。
9,测试
打开Tomcat服务器,修改h:\WINDOWS\system32\drivers\etc\hosts文件,让www.crazycow.cn的域名指向127.0.0.1,打开IE,输入[color=#0000ff]http://www.craycow.cn/blog/test.jsp[/color],回车,如果出现当前时间,那说明你配置已经成功。

注意的问题:
刚才说了,如果你没有配置成功也很正常,看下面的问题你注意了没有。我将对应上面的步骤分别解释
1,应该没有什么问题,以前的版本有直接的安装程序,现在却没有了。手册上还说可以直接写配置文件不写注册表,我没有试,主要是不清楚原理。
2,注意你的两个配置文件workers.properties和uriworkermap.properties中的两个worker是不是都叫 ajp13,有没有拼写错误.还有如果你配置网站时做了主机头设置,那你workers.properties文件中worker.ajp13.host 的值应该是www.crazycow.cn而不是localhost
3,要注意IIS要对这个jakarta目录有足够的权限.如果你的筛选器添加失败很有可能是权限的原因.
4,应该也没有什么问题,不过你可以测试一下你建立的网站,比如在H:\Inetpub\www.crazycow.cn下放置一个简单的 index.html文件,看能不能正常访问。在这里,我们还可以随便敲一个[color=#0000ff]http://www.crazyoc.cn/xxx.jsp[/color],然后再看 IIS的访问日志,报的是404.0或者404.3错误,前者说明文件或目录无法找到,后者说明文件或目录无法找到:MIME映射策略禁止该请求。
5,这里有可能出现ISAPI筛选器不能加载的问题,状态一栏是红色箭头。打开系统事件查看器,如果发现 "HTTP 筛选器 DLL D:\ Tomcat5.0\bin\jakarta\isapi_redirect.dll 加载失败。数据是错误。 ",那加载失败的原因应该是权限问题,特别是NTFS文件系统。因为需要IIS加载isapi_redirect.dll,所以IIS对它要有权限,所以可以对D:\Tomcat5.0\bin目录添加IIS_WPG和IUSR这两个用户(也有可能要对D:\Tomcat5.0\conf添加权限)。再重新加载一边,如果还没有成功,那我也没有办法了,只能换个FAT32系统或者其他jk版本,再或者看事件查看器,到网上搜解决办法。


如果筛选器加载成功,到这一步,我们还可以做个小小的测试,随便敲一个[color=#0000ff]http://www.crazyoc.cn/xxx.jsp[/color],再看IIS日志,这时报报的错是:404.2,文件或目录无法找到:锁定策略禁止该请求。这也说明筛选器已经加载成功,只是没有进一步处理。
6,7,8步也应该没有什么问题,除了添加新的Web 服务扩展jakarta之外还要使它允许。另外同样要注意权限的问题,因为涉及到Internet访问,你的虚拟目录好像也应该有IUSR这个权限。还有就是注意拼写不要写错,比如把jakarta写成了jarkata。
到了第6步,我们还可以做个实验,在IE里输入[color=#0000ff]http://www.crazycow.cn/blog/xxx.jsp[/color],回车,这是IIS日志报的就是503错误了,服务器错,这说明你已成功了一大半,接下来就只剩下开Tomcat.
9,如果你前面都对,只是你输入[color=#0000ff]http://www.craycow.cn/blog/test.jsp[/color],没有出现当前时间.那么还请查看还有你有没有开启 Tomcat,并在Tomcat引擎中是否加载了和IIS相对应的WEB应用?有的人访问jsp时,Tomcat日志里出现对 /jakart/isapi_redirect.dll的访问或者,直接出现乱码或下载jsp文件,都是这里的原因.
总之大致的解决方法是,结合事件查看器的内容,IIS日志,Tomcat日志,一步步的排错,再到网上搜相关的资料.
还要告诉大家的事,整个过程好像没有怎么重启IIS,也没有设置IIS5.0隔离模式.微软这方面做得确实没话说.

热点排行