當前位置:開發者網絡 >> 技術教程 >> 網管專欄 >> WEB服務 >> 內容
精彩推薦
分類最新教程
分類熱點教程
    
IIS6 和Tomcat5 的整合
作者:未知
日期:2004-07-01
人氣:
投稿:Andy.m(轉貼)
來源:未知
字體:
收藏:加入瀏覽器收藏
以下正文:
  花了很久時間,終於搞定了IIS6和Tomcat的整合。現在把步驟貼出來給各位一點參考,也免去了新手在Google上暴走和一次次的調試。開始吧!
  首先先說明我的系統,Windows 2003 Server中文版+IIS6+Tomcat5.0.14,JDK 1.4.2安裝目錄為C:\JDK,Tomcat安裝目錄為C:\Tomcat,環境變量JAVA_HOME和TOMCAT_HOME都已設置好並指向其各自的安裝目錄。(注意,接下來所有文件中涉及到tomcat路徑的請自行修改為自己的Tomcat路徑)
  Tomcat5和IIS6的安裝我就不說了,網上的文檔很多,假定此時我們已經安裝好了Tomcat5和IIS6並都能獨立運行,兩者的默認網站均指向C:\web目錄。
  
  現在我們要做的是到http://apache.linuxforum.net/dist/jakarta/tomcat-connectors/jk2/binaries/win32/jakarta-tomcat-connectors-jk2.0.2-win32-IIS.zip 去下載JK2,由JK2負責IIS和Tomcat的通訊,解開後得到isapi_redirector2.dll,我把它放在了C:\tomcat\iis下(目錄隨便)。
  接下來在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

  接下來開始編輯註冊表,直接建一個iis.reg文件,把下面一段拷進去保存然後雙擊iis.reg把信息導入註冊表。(注意,把涉及的Tomcat路徑改成你的Tomcat的路徑)

  Windows Registry Editor Version 5.00

  [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\2.0]
  "serverRoot"="c:\\Tomcat"
  "extensionUri"="/jakarta/isapi_redirector2.dll"
  "workersFile"="c:\\Tomcat\\conf\\workers2.properties"
  "logLevel"="INFO"


  然後打開「我的電腦->控制面板->管理工具->Internet信息服務管理器」,在裡面選擇「網站」中的默認網站(默認網站我假定指向C:\web),在其上點右鍵選「屬性」,在彈出的頁框裡選擇「ISAPI篩選器」,點「添加」,篩選器名稱填jakarta,可執行文件中填入你的isapi_redirector2.dll的絕對路徑。「確定」後點「確定」關閉屬性頁。再在「默認網站」上右鍵,選擇「新建」->「虛擬目錄」,別名填jakarta,下一步,路徑選為你的isapi_redirector2.dll存放的目錄,我的是C:\tomcat\iis,下一步,權限中記得把「執行」那項打勾,好了,完成。
  如果你用的是IIS5的話,到這裡就可以結束了,但IIS6還沒完,繼續。
  在「Internet信息服務管理器」的「網站」中的「Web服務擴展」上點右鍵選擇「添加一個新的Web服務擴展」,彈出的框中擴展名填Tomcat(其實無所謂的),「要求的文件」選「添加」然後找到你的isapi_redirector2.dll後「確定」。「設置擴展狀態為允許」也打上勾,確定。
  好了,配置完了。現在我們啟動Tomcat5,然後net start w3svc啟動IIS6。鍵入http://localhost:8080/hello.jsp(這個文件是我放在c:\web下的)看看!然後在看看http://localhost/hello.jsp,如果兩者執行結果一樣,恭喜你,整合成功了!

  但或許此時還不行,這時你該確認以下幾點:
  1.你的「Internet信息服務管理器」->「網站」->「默認網站」->「屬性」->「ISAPI篩選器」中的jakarta是否是向上的綠色箭頭?如果是紅色的,檢查一下你之前做的配置有沒有少了或是寫錯了點什麼,再重新配置一遍
  2.確認你的Tomcat安裝目錄下的common\lib目錄中是否有tools.jar文件(Tomcat5好像是有的,但Tomcat4中是沒有的,網上的文檔很少提到這件事,致使我多次配置失敗),沒有的話從JDK的lib下拷一個過去。
  3.IIS指向的目錄最好和Tomcat指向的目錄一致,不然會發生找不到圖像和其他資源文件的問題。(這點不影響執行,呵呵!)
  4.英文文檔中還提到應該把IIS6設置為IIS5隔離模式,「Internet信息服務管理器」->「網站」->「屬性」->「服務」,把「以IIS5.0隔離模式運行WWW服務」打上勾。不過我不打勾也能正常使用,如果你配置不成功也可以試試這個。

  還不行?好,我們來狠的,打開機箱,取出硬盤,扔到地上給我踩,踩,踩!看你還敢跟我頂^_^(開個玩笑,不過之前我配置多次失敗後確實有些無奈和懊惱)
  此文實際也等於是轉載,我只是負責輸入而已,如有錯誤請指出!歡迎各位與我交流,ymer@21cn.com,JSP程序員,EJB學習中......

  參考網址:https://www.rit.edu/~ack5504/tomcat-iis6-howto/tomcat-iis6-howto.html
      http://www.knowsky.com/3181.html

相關文章: