没有根的野草,漂浮的命途

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

关于IIS5.0和tomcat6.0的整合

环境:Win2003server+IIS5.0+Tomcat6.0

解决问题:原IIS服务器上的PHP项目和新开发的Tomcat上的JavaWeb项目公用80端口

一、配置tomcat和Java运行的环境变量

二、将下载的isapi_redirect.dll文件放置在本地任意目录,为方便管理本人将该文件放到$TOMCAT_HOME/bin/jk路径下(PS:新建jk文件夹)

三、编写IIS跳转Tomcat所需要的配置信息,可以有两种方法实现

  方法一:

  新建注册表文件:"任意文件名.reg"

  内容:

  

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE/SOFTWARE/Apache Software Foundation/Jakarta Isapi Redirector/1.0]

"extension_uri"="/jakarta/isapi_redirect.dll"

"log_file"="D:/Server/apache-tomcat-6.0.35/logs/isapi.log "

"worker_file"="D:/Server/apache-tomcat-6.0.35/conf/workers.properties"

"worker_mount_file"="D:/Server/apache-tomcat-6.0.35/conf/uriworkermap.properties"

"log_level"="realease"

  PS:内容中设计路径的地方请根据各自的配置做个性化修改

  创建之后,双击执行reg文件,提示成功后说明操作ok

  

   方法二:

    编写isapi_redirect.properties文件,笔者开始的时候是根据Apache官方网站提供的设置注册表的方法,可以工作,但是在系统 的注册表中加内    容的过程没有直接写一个属性文件方便。样例isapi_redirect.properties文件如下:

# Configuration file for the Jakarta ISAPI Redirector

# The path to the ISAPI Redirector Extension, relative to the website

# This must be in a virtual directory with execute privileges

extension_uri=/jakarta/isapi_redirect.dll(固定的)

# Full path to the log file for the ISAPI Redirector

log_file=c:/apache-tomcat-5.5.23/logs/isapi_redirect.log(日志位置,位置任意)

# Log level (debug, info, warn, error or trace)

log_level=info(日志级别,五种中任选)

# Full path to the workers.properties file

worker_file=C:/apache-tomcat-5.5.23/conf/workers.properties(workers属性文件,位置任意,但是在指定位置必须创建此文件)

# Full path to the uriworkermap.properties file

worker_mount_file=C:/apache-tomcat-5.5.23/conf/uriworkermap.properties(workers对uri映射文件,位置任意,但是在指定位置必须创建此文件)

  

 四、编写workers.properties和uriworkermap.properties文件

  在上面isapi_redirect.properties属性文件中定义的位置分别创建着两个文件。

  workers.properties文件内容(示例文件,可以根据需要进行任意修改)

  

# workers.properties.minimal -
# This file provides minimal jk configuration properties needed to
# connect to Tomcat.
#
# The workers that jk should create and work with
#
worker.list=lyWorker
#
# Defining a worker named lyWorker and of type ajp13
# Note that the name and the type do not have to match.
#
worker. lyWorker.type=ajp13
worker. lyWorker.host=localhost
worker. lyWorker.port=8009

  这里的woker的名称是lyWorker,类型是ajp13,主机是localhost,对应端口号是8009,这个8009要和$TOMCAT_HOME/conf/server.xml文件中的端口号对应:

  …

  enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

  ……

  uriworkermap.properties文件内容:

  

# uriworkermap.properties - IIS
#
# This file provides sample mappings for lyWorker
# worker defined in workermap.properties.minimal
# The general syntax for this file is:
# [URL]=[Worker name]
/servlets-examples/*=lyWorker
/*.jsp=lyWorker

 上面的配置说明了所有对/servlets-examples目录下和所有jsp文件的请求都由lyWorker来处理,也就是说会发送到Tomcat,由Tomcat容器进行处理。

六、 创建Filter:

  打开IIS,在默认Web站点选项上点击右键,然后选择属性,选择ISAPI筛选器,选择添加:

clip_image002

  筛选器的名称任意,可执行文件为isapi_redirect.dll

  创建完成后点击应用,然后确定完成。如下图所示,如果箭头为绿色向上,则表示筛选器配置成功,否则为红色,表示不成功(此处只有不为红色即为成功,运行或重启之后就可以变绿色)。

clip_image004

七、 在IIS中建立虚拟目录:

打开Internet信息服务工具:选择Internet信息服务àasi(你的主机名)à默认Web站点,点击右键,选择新建虚拟目录,如下图所示:

clip_image006

在弹出的窗口中点击下一步,然后在虚拟目录别名中填写jakarta(这个名称是固定的),如下图所示:

clip_image008

点击下一步,在Web站点内容目录中通过点击浏览选择isapi_redirect.dll文件所在的目录,如下图所示:

clip_image010

在设置访问权限中,机的将执行权限选中(第三个复选框):

clip_image012

创建完成后,添加了虚拟站点jakarta,选中后,右侧显示该内容目录中的内容:

clip_image014

(其中servlets-examples是后来创建的,根据初始情况的不同,默认Web站点下的内容可能会不同,但是并不影响配置)。

以同样的步骤创建servlets-examples虚拟目录,目录内容为c:/apache-tomcat-5.5.23/webapps/servlets-examples,即Tomcat自带的servlets例子程序目录。同样给与执行的权限。

八、 在$TOMCAT_HOME/conf/server.xml文件中添加Context元素:

……

 

 

 

……

这个前提是在安装tomcat时,在$TOMCAT_HOME/webapps目录下,带有servlets-examples样例程序。

添加完成后,保存。

九、 很重要的一步,设置完成后,重新启动计算机。笔者之前由于没有重新启动计算机,所以不管怎么样来回启动停止Tomcat和IIS,都不能访问成功。

十、 重启后,启动Tomcat服务器,启动IIS服务器(IIS一般随系统一起启动),在地址栏内输入:http://localhost/servlets-examples

如果显示内容为文件的列表或者其他内容(不是错误页面,如果是500错误,可能是服务器没有启动),可能是没有找到欢迎页面,并且没有浏览目录的权 限,在IIS中点击默认Web站点,右键,选择属性,然后选择文档,在其中添加index.jsp和index.html作为欢迎页面,重新进入,正常的 成功后进入页面如下图:

clip_image016

现在还不能说明已经将IIS和Tomcat整合成功,因为现在看到的页面是静态的内容,所以要测试执行一个Servlet,点击Hello World应用程序右边的Execute连接:

如果出现下图所示页面,则表示整合IIS和Tomcat成功:

clip_image018

其中Tomcat和IIS或者Apache的整合很简单,主要是配置正确,还有一些稍微高级一些的应用,例如请求的分离,多主机等。以后再作介绍。

关于workers.properties文件和uriworkmap.properties文件的语法,可以参考Apache官方网站。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2012-06-12 14:33  针尖上的舞者  阅读(199)  评论(0)    收藏  举报