IIS + TOMCAT 6
原始網頁http://big5.webasp.net/article/12/11571.htm花了很久時間,終於搞定了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
0 意見:
張貼留言