如何配置Tomcat 5和IIS 5协同工作
    如何配置Tomcat 5和IIS 5协同工作 
2010年06月11日
  近遇到一个项目,无法避免的需要将IIS和Tomcat协调起来协同工作,同时解析asp和jsp两种脚本语言。 
  查 看Tomcat官方HowTo,几经操作并未成功。查看网上讨论,发现中文资料介绍的都是tomcat4.x版本的配置方法,老旧已经不适用。后来对照多 篇英文资料,学习、操作之后获得成功。 
  鉴于讨论此问题的中文资料之匮乏,遂决定将我的配置过程整理,但愿对同好者有所帮助。 
  此 文章论述内容、书写格式仿照了http://virtualict.net/support/kb/iis6-Tomcat5-JK2. html , 并引用了其中部分文字。 
  在我配置、翻阅资料的过程当中,感觉到了IIS、Apache Tomcat、JK2等官方文档对此问题论述的不详尽,甚至有时候感觉到了被误导,以至增加了解决问题的难度,期待与大家讨论。 
  本人的配置环境 
  window 2K professional sp4  
  IIS 5.0 
  j2sdk1.4.2_04 
  jakarta-tomcat-5.0.24 
  jakarta-tomcat-connectors-jk2.0.4 
  配置过程中涉及的路径如果没有特殊说明,则都不是系统要求,大家可以修改以适应自己机器的环境。 
  这里是另一个自动安装程序,使用方法本文不做讨论 
  Isapi redirector jk2.02 Installer - Integrating Tomcat with IIS 这是一篇讲述如何安装、配置Tomcat 5 Java Servlet & JSP服务到微软IIS 5.0服务器的文章,这篇文章是本人自己配置过程和经验的总结,并推荐了一些给过本人极大帮助的文档。 
  掌握方法的朋友只需要15分钟就能完成整个 配置过程。    
  Microsoft Windows 2000 professional, IIS5 已经安装并工作正常 
  需要下载的软件:  下载 由于版本更新的问题,这里没有给出软件的准确下载地址,但根据下面的链接用户可以很容易找到所需软件的确切地址。 来自 java.sun.com/downloads/  选择 the J2SE 1.4.2 (或更高版本) All platforms     
  然后按照提示进入文件列表页面,下载文件   
  来自Apache Jakarta 的for Win的编译版本。Tomcat 5.x 应该在页面的底部。写此文章的时候Tomcat已经发布了5.0.25版,不过配置过程是一样的。   
  选择 5.0.24 可执行文件 (或更高版本)  同样在Apache Jakarta 下载页面。Tomcat Web Server 连接器就在Tomcat 5.0.24链接的下面   
  选择 JK2 编译版本   
  选择 win32, 然后选择下载jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip   
  注意 这个目录列表显示的文件名称被截断,所以你需要观察浏览器状态栏中的提示,确认你准备下载的文件应该是以"...iis.zip"为结尾的 建议大家把下载的文件放在同一个文件夹里。   
  运行j2sdk-1_4_2_04-windows-i586-p.exe 按照提示安装   
  可以更改安装路径到你习惯的地方 运行jakarta-tomcat-5.0.24.exe 按照提示安装.   
  如果要改变安装路径,可以在这个步骤操作。   
  可以更改至其它路径,如 C:\Tomcat 5.0   
  设定密码,妥善保管密码,不推荐空密码。   
  这个步骤是选择本地机器的jdk路径,一般情况下,安装文件会自动搜索并显示,如果没有正确显示,也可以手动更 改。   
  成功安装后,程序会提示启动tomcat并查看readme文档。 
  注意: 启动Tomcat之前要确定系统没有其它服务已经占用8080端口(Tomcat默认端口)和8009端口( Tomcat's AJP13 连接器端口)  
  Tomcat正常启动后会在系统栏加载图标 
  在图标上右键鼠标可以看到一些设置项目 
  点击Configure...看到如下显示,选择Startup type为automatic自动启动。   
  解压缩jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip 得 到如下文件夹   
  进入\bin\ 后可见   
  剪切/复制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'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 
  # 
  # 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 
  现在轮到workers2.properties, 这个文件需要自己创建,内容如下(附件中有一个 copy) 
  红色的这行要注意了,把"C:\Tomcat 5.0\work\ " 这个路径修改成你自己的路径,而jk2.shm这个文件不用担心,它现在不存在也没有关系,它会在需要的时候自动被创建。 
  [shm:] 
  info=Shared memory file. Required for multiprocess servers 
  file=C:\Tomcat 5.0\work\jk2.shm 
  si