一.說明:
配置如下: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 Tomcat"s startup class (the class that contains Tomcat"s
# starting point.
#
wrapper.startup_class=org.apache.tomcat.startup.Tomcat
#
# This is the location where tomcat"s 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的服務,可以 在這裡啟動或者中止它 。