一.说明:
配置如下:win2000 server + iis 5.0(win2000自带)+ tomcat 3.1 binary release.
我使用的tomcat 3.1是编译过的版本,在这个版本里面没有配置iis和nt service
的说明,但是在tocmcat 3.2 source版里面有比较详细的帮助文件。根据这些帮助文件 可以顺利的把tomcat作为插件插入iis。
二.启动tomcat
安装完tomcat之后(具体安装过程略),要启动tomcat很简单,首先可以查看tomcat\bin\startup.bat文件,利用控制面板里面的系统->高级->环境变量对话框,新建环境变量tomcat_home和java_home,使它们各自指向tomcat和jdk的根目录即可。另外为保险起见,可以在path里面把二者的路径添加进去。然后开启一个dos窗口执行startup.bat。 启动tomcat后,会有一个dos窗口显示启动情况。此时访问http://localhost:8080可以看到tomcat的一些示例。
三.配置
下一步工作就是如何把tomcat插入iis,使二者协同工作。主要分以下几个步骤:
1、在windows注册表中注册:
将下面的begin和end之间的jakarta.reg文件装入机器,我的tomcat装在c:\\jakarta-tomcat,你可根据自己的环境修改jakarta.reg文件
jakarta.reg:
—begin—
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"="c:\\jakarta-tomcat\\logs\\isapi.log"
"log_level"="debug"
"worker_file"="c:\\jakarta-tomcat\\conf\\workers.properties"
"worker_mount_file"="c:\\jakarta-tomcat\\conf\\uriworkermap.properties"
—end—
注:其中的路径需改成你的tomcat的安装路径。
2、打开iis管理器,在"默认web站点”中建立一个虚拟目录jakarta,让它的路径指向isapi_redirect.dll所在目录。(在3.1 bin中可能没有这个dll,你可以从3.2的bin\iis\nt4\i386目录中拷贝一个过来。该虚拟目录应被设置为"可执行”。
3、利用iis管理器,把isapi_redirect.dll设置为"默认web站点”的isapi筛选器,名称可以任起。
4、重启iis,确认刚才添加的isapi筛选器前面标了一个绿色向上的箭头然后重启tomcat(执行tomcat\bin\shutdown.bat可关闭tomcat) 此时,iis应该已经可以处理*.jsp文件了。由于tomcat设置中,默认的root是 tomcat\webapps\root,所以你可以在这个目录中放置一个jsp文件(例如 index.jsp),然后访问http://localhost/index.jsp,看一下效果。 如果按照上面的方法还是无法使iis处理jsp文件,可以尝试在iis管理器->默认web站点属性->主目录->配置中添加一个"应用程序映射”,把*.jsp文件映射到isapi_redirect.dll上。
四.作为nt的服务
作为nt service的设置比较简单。
首先从3.2拷贝过来jk_nt_service.exe,然后把下面的内容保存起来,起名
为wrapper.properties
#
# $header: /home/cvs/jakarta-tomcat/src/etc/wrapper.properties,v 1.1
#2000/05/03 11:54:49 shachor exp $
# $revision: 1.1 $
# $date: 2000/05/03 11:54:49 $
#
#
# jk_service.properties – a bootstrup file for the tomcat nt service.
#
# this file provides jk_nt_service with the needed information to
# start tomcat at a different process.
#
# as a general note, the characters $( and ) are used internally to define
# macros. do not use them!!!
#
# whenever you see a set of lines such as:
# x=value
# y=$(x)\something
#
# the final value for y will be value\something
#
# normaly all you will need to modify is the first two properties, i.e.
# wrapper.tomcat_home and wrapper.java_home. most of the configuration
# is derived from these two.
#
#
# wrapper.tomcat_home should point to the location where you
# installed tomcat. this is where you have your conf, webapps and lib
# directories.
#
wrapper.tomcat_home=d:\tomcat
#
# wrapper.java_home should point to your java installation. normally
# you should have a bin and lib directories beneath it.
#
wrapper.java_home=d:\jbuilder35\jdk1.2.2
#
#—— advanced mode ————————————————
# make sure that you read the how-to before making too many changes.
#———————————————————————
#
#
# defining where the service is going to put the standard
# output of tomcat. this is where system.out.println and
# system.err.println goes to.
#
wrapper.stdout=$(wrapper.tomcat_home)\jvm.stdout
wrapper.stderr=$(wrapper.tomcat_home)\jvm.stderr
#
# additions to the path. put here directories where you store dlls for
# native methods etc.
#
wrapper.ld_path=d:\
wrapper.ld_path=c:\
#
# defining the classpath. all the rows that belongs to the class_path
# property are concatenated to create the classpath for tomcat.
#
# if you have additional locations that you would like to add to the
# claspath you should add a new wrapper.class_path=<location> line.
#
wrapper.class_path=$(wrapper.tomcat_home)\classes
wrapper.class_path=$(wrapper.tomcat_home)\lib\xml.jar
wrapper.class_path=$(wrapper.tomcat_home)\lib\webserver.jar
wrapper.class_path=$(wrapper.tomcat_home)\lib\servlet.jar
wrapper.class_path=$(wrapper.tomcat_home)\lib\jasper.jar
#
# this is where javac is located in jdk1.2.x
#
wrapper.class_path=$(wrapper.java_home)\lib\tools.jar
#
# and a tribute to jdk1.1.x
#
wrapper.class_path=$(wrapper.java_home)\lib\classes.zip
#
# this is the java interpreter used for running tomcat
#
wrapper.javabin=$(wrapper.java_home)\bin\java.exe
#
# this is tomcats startup class (the class that contains tomcats
# starting point.
#
wrapper.startup_class=org.apache.tomcat.startup.tomcat
#
# this is the location where tomcats server.xml configuration file
# is located.
#
wrapper.server_xml=$(wrapper.tomcat_home)\conf\server.xml
#
# the nt service uses ajp12 to shutdown tomcat. the wrapper.shutdown_port
# tells the service the identity of the port that is used by ajp12.
#
wrapper.shutdown_port=8007
#
# this is the command line that is used to start tomcat. you can *add* extra
# parameters to it but you can not remove anything.
#
wrapper.cmd_line=$(wrapper.javabin) -classpath $(wrapper.class_path) $(wrapp
er.startup_class) -config $(wrapper.server_xml) -home $(wrapper.tomcat_home)
保存后,只需修改里面的wrapper.tomcat_home和wrapper.java_home使它们各自指向tomcat根目录和jdk根目录即可。 然后运行jk_nt_service -i <服务名称> <wrapper.properties的路径> 服务名称可以随便起,例如tomcat或者jakarta等等都行。wrapper.properties的路径应为完整路径(包括wrapper.properties这个文件名)示例:jk_nt_service -i jakarta d:\wrapper.properties 这样在控制面板->服务里面,我们可以看到一个名为jakarta的服务,可以 在这里启动或者中止它
