Tomcat5和IIS6整合

環境:
Windows 2003 Server中文版+IIS6+Tomcat5.0.28,JDK 1.4.2安裝目錄爲C:j2sdk1.4.2_05,Tomcat安裝目錄爲D:Program FilesTomcat 5.0,環境變量JAVA_HOME和TOMCAT_HOME都已設置好並指向其各自的安裝目錄。(注意,接下來所有文件中涉及到tomcat路徑的請自行修改爲自己的Tomcat路徑)
  Tomcat5和IIS6的安裝我就不說了,網上的文檔很多,假定此時我們已經安裝好了Tomcat5和IIS6並都能獨立運行,兩者的默認網站均指向C:web目錄。
  現在我們要做的是 [url]http://apache.linuxforum.net/tomcat/tomcat-connectors/jk2/binaries/win32/jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip[/url] 去下載JK2, 由JK2負責IIS和Tomcat的通訊,解開後得到isapi_redirector2.dll,我把它放在了%TOMCAT_HOME%iis下(目錄隨便)。
1、在Tomcat安裝目錄下的conf目錄下建一個workers2.properties文件,把下面這段東東拷進去保存。注意file=".."之中的路徑要用"/"哦!
[shm]
file=c:/Tomcat/logs/jk2.log
size=1048576
# 實際運用時把所有的localhost和8009換成你自己的IP和端口
[channel.socket:localhost:8009]
port=8009
host=localhost
# define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009
# Uri mapping
[uri:/*.jsp]
[uri:/web/*]
worker=ajp13:localhost:8009
# define the worker
[status:status]
# Uri mapping
[uri:/jkstatus/*]
worker=status:status
再建一個jk2.properties文件
內容如下:
request.tomcatAuthentication=false
2、在註冊表中加入項 "HKEY_LOCAL_MACHINESOFTWAREApache Software FoundationJakarta Isapi Redirector2.0"
在這個項中追加一個字串值,名稱=extension_uri 值=/jakarta/isapi_redirector2.dll
在這個項中追加一個字串值,名稱=log_level 值=debug (根據情況選擇 debug/inform/error/emerg)
在這個項中追加一個字串值,名稱=worker_file 值=$TOMCAT_HOMEconfworkers2.properties (根據自己環境作相應的設定) 注意:2.0不用加入confuriworkermap.properties文件,註冊項的名稱一定要正確,包括空格
當然也可以自建一個註冊表文件 註冊表.reg
內容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREApache Software FoundationJakarta Isapi Redirector2.0]
"serverRoot"="$TOMCAT_HOME"
"extensionUri"="/jakarta/isapi_redirector2.dll"
"workersFile"="$TOMCAT_HOMEconfworkers2.properties"
"logLevel"="DEBUG"
你是否已經看出isapi_redirector2.dll文件所需要的這麼幾個參數?有興趣可以去看isapi_redirector2.dll的源代碼。
3.設置IIS
在默認Web站點上點擊右鍵選"屬性",在彈出的頁框裏選擇"ISAPI篩選器",點"添加",篩選器名稱填jakarta,可執行文件中填入你的isapi_redirector2.dll的絕對路徑。"確定"後點"確定"關閉屬性頁。再在"默認網站"上右鍵,選擇"新建"->"虛擬目錄",別名填jakarta,下一步,路徑選爲你的isapi_redirector2.dll存放的目錄,我的是C: omcatiis,下一步,權限中記得把"執行"那項打勾,好了,完成。
  如果你用的是IIS5的話,到這裏就可以結束了,但IIS6還沒完,繼續。
  在"Internet信息服務管理器"的"網站"中的"Web服務擴展"上點右鍵選擇"添加一個新的Web服務擴展",彈出的框中擴展名填Tomcat(其實無所謂的),"要求的文件"選"添加"然後找到你的isapi_redirector2.dll後"確定"。"設置擴展狀態爲允許"也打上勾,確定。
  好了,配置完了。現在我們啓動Tomcat5,然後net start w3svc啓動IIS6。鍵入[url]http://localhost:8080/hello.jsp[/url](這個文件是我放在c:web下的)看看!然後再看看[url]http://localhost/hello.jsp[/url],如果兩者執行結果一樣,恭喜你,整合成功了!
  但或許此時還不行,這時你該確認以下幾點:
  1.你的"Internet信息服務管理器"->"網站"->"默認網站"->"屬性"->"ISAPI篩選器"中的jakarta是否是向上的綠色箭頭?如果是紅色的,檢查一下你之前做的配置有沒有少了或是寫錯了點什麼,再重新配置一遍
  2.確認你的Tomcat安裝目錄下的commonlib目錄中是否有tools.jar文件(Tomcat5好像是有的,但Tomcat4中是沒有的),沒有的話從JDK的lib下拷一個過去。
  3.IIS指向的目錄最好和Tomcat指向的目錄一致,不然會發生找不到圖像和其他資源文件的問題。(這點不影響執行)
  4.英文文檔中還提到應該把IIS6設置爲IIS5隔離模式,"Internet信息服務管理器"->"網站"->"屬性"->"服務",把"以IIS5.0隔離模式運行WWW服務"打上勾。不過我不打勾也能正常使用,如果你配置不成功也可以試試這個。
現在我們嘗試一下[url]http://localhost:8080/../hello.jsp[/url],是不是jsp文件的源代碼都出來了?我們現在來修補一下這個缺陷。
解決方法:控制面板->管理工具->Internet服務管理器,選中"所有網站"->屬性,在"主屬性"中點擊"編輯",進入"WWW服務主屬性"頁面,選擇"主目錄",點擊"應用程序設置"中的"配置",添加一個ISAPI應用程序,可執行文件就用那個isapi_redirector2.dll,擴展名用jsp,確定,然後重啓IIS,問題解決!!!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章