春天的光輝

          把春天的氣息和光芒灑滿大地,沐浴著身邊的每一個人... ...

           

          如何使用JK2連接器配置Tomcat 5.0.x和IIS 5.0協(xié)同工作

          如何使用JK2連接器配置Tomcat 5.0.x和IIS 5.0協(xié)同工作

          2004.5 臧士睿 qq:10743383

          網絡轉載請保留作者聲明,盈利性印刷刊物轉載請聯(lián)系 zself@vip.cc163.com

          本文中所有操作都已經在Window2000 Advance Server和Window2000 Professional下測試通過

          所有內容:New IIS5.0+Tomcat5.0.x HowTo
          專題討論區(qū):http://hh.cc163.com/form/cgi-bin/forums.cgi?forum=4
          主頁:http://hh.cc163.com/


          目錄

          1. 摘要
          2. 準備工作
          3. 下載
            1. Java 2 SDK 1.4.2 (或更高版本)
            2. Tomcat 5.0.24 (或更高版本)
            3. Tomcat Web Server 連接器
          4. 安裝
            1. Java 2 SDK
            2. Tomcat 5
            3. Tomcat JK2 IIS 連接器
          5. 設置
            1. Tomcat
            2. Tomcat IIS 連接器
            3. Windows
            4. IIS
              1. 設置ISAPI篩選器
              2. 創(chuàng)建ISAPI篩選器使用的虛擬目錄
              3. 重新啟動IIS服務
          6. 測試
            1. Tomcat
            2. IIS
          7. 參考文獻

          ?


          最近遇到一個項目,無法避免的需要將IIS和Tomcat協(xié)調起來協(xié)同工作,同時解析asp和jsp兩種腳本語言。
          查看Tomcat官方HowTo,幾經操作并未成功。查看網上討論,發(fā)現(xiàn)中文資料介紹的都是tomcat4.x版本的配置方法,老舊已經不適用。后來對照多篇英文資料,學習、操作之后獲得成功。

          鑒于討論此問題的中文資料之匱乏,遂決定將我的配置過程整理,但愿對同好者有所幫助。

          此文章論述內容、書寫格式仿照了http://virtualict.net/support/kb/iis6-Tomcat5-JK2.html,并引用了其中部分文字。

          在我配置、翻閱資料的過程當中,感覺到了IIS、Apache Tomcat、JK2等官方文檔對此問題論述的不詳盡,甚至有時候感覺到了被誤導,以至增加了解決問題的難度,期待與大家討論。

          本人的配置環(huán)境
          Window2000 Professional+sp4
          (Window2000 Advance Server+sp4)
          IIS 5.0
          j2sdk1.4.2_04
          jakarta-tomcat-5.0.24
          jakarta-tomcat-connectors-jk2.0.4

          配置過程中涉及的路徑如果沒有特殊說明,則都不是系統(tǒng)要求,大家可以修改以適應自己機器的環(huán)境。

          這里是另一個自動安裝程序,使用方法本文不做討論
          Isapi redirector jk2.02 Installer - Integrating Tomcat with IIS

          摘要

          這是一篇講述如何安裝、配置Tomcat 5 Java Servlet & JSP服務到微軟IIS 5.0服務器的文章,這篇文章是本人自己配置過程和經驗的總結,并推薦了一些給過本人極大幫助的文檔。
          掌握方法的朋友只需要15分鐘就能完成整個配置過程。

          準備工作

          Microsoft Windows 2000 professional, IIS5 已經安裝并工作正常

          需要下載的軟件:

          • Java 2 Standard Edition Software Development Kit 1.4.2.04 (或更高版本)
          • Jakarta Tomcat 5.0 (或更高版本)
          • jakarta Tomcat Connectors-JK2.0.4(或更高版本)

          下載

          由于版本更新的問題,這里沒有給出軟件的準確下載地址,但根據下面的鏈接用戶可以很容易找到所需軟件的確切地址。

          Java 2 SDK 1.4.2 (或更高版本)

          來自 java.sun.com/downloads/ 選擇 the J2SE 1.4.2 (或更高版本) All platforms

          ?

          然后按照提示進入文件列表頁面,下載文件


          Tomcat 5.0.24 (或更高版本)

          來自Apache Jakarta的for Win的編譯版本。Tomcat 5.x 應該在頁面的底部。寫此文章的時候Tomcat已經發(fā)布了5.0.25版,不過配置過程是一樣的。

          選擇 5.0.24 可執(zhí)行文件 (或更高版本)


          Tomcat Web Server 連接器

          同樣在Apache Jakarta下載頁面。Tomcat Web Server 連接器就在Tomcat 5.0.24鏈接的下面

          選擇 JK2 編譯版本

          選擇 win32, 然后選擇下載jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip

          注意 這個目錄列表顯示的文件名稱被截斷,所以你需要觀察瀏覽器狀態(tài)欄中的提示,確認你準備下載的文件應該是以"...iis.zip"為結尾的


          安裝

          建議大家把下載的文件放在同一個文件夾里。

          Java 2 SDK

          運行j2sdk-1_4_2_04-windows-i586-p.exe 按照提示安裝

          可以更改安裝路徑到你習慣的地方

          ?

          Tomcat 5

          運行jakarta-tomcat-5.0.24.exe 按照提示安裝.

          如果要改變安裝路徑,可以在這個步驟操作。

          可以更改至其它路徑,如 C:\Tomcat 5.0

          設定密碼,妥善保管密碼,不推薦空密碼。

          這個步驟是選擇本地機器的jdk路徑,一般情況下,安裝文件會自動搜索并顯示,如果沒有正確顯示,也可以手動更改。

          成功安裝后,程序會提示啟動tomcat并查看readme文檔

          注意: 啟動Tomcat之前要確定系統(tǒng)沒有其它服務已經占用8080端口(Tomcat默認端口)和8009端口( Tomcat's AJP13 連接器端口)

          Tomcat正常啟動后會在系統(tǒng)欄加載圖標

          在圖標上右鍵鼠標可以看到一些設置項目

          點擊Configure...看到如下顯示,選擇Startup type為automatic自動啟動。


          Tomcat JK2 IIS 連接器

          解壓縮jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip得到如下文件夾

          進入\bin\后可見

          剪切/復制isapi_redirector2.dll 文件到Tomcat's bin\目錄中

          新建目錄win32\i386\ 并粘貼isapi_redirector2.dll

          記住這個路徑,稍后配置IIS的時候還會用到。這個路徑不是系統(tǒng)要求的,可改變!

          現(xiàn)在可以刪除jakarta-tomcat-connectors-jk2.0.4-win32-IIS目錄,這里面的文件已經沒用了。實際上在jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip中我們只用到了isapi_redirector2.dll一個文件


          設置

          Tomcat

          進入 Tomcat's conf\ 文件夾.

          要支持 JK2 連接器, 你可能需要修改jk2.properties文件. 大多數(shù)情況下保留此文件的默認狀態(tài)即可,本人的多次配置過程都沒有修改過這個文件。

          ## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED
          ## WHEN YOU EDIT THE FILE.
          
          ## COMMENTS WILL BE _LOST_
          
          ## DOCUMENTATION OF THE FORMAT IN JkMain javadoc.
          
          # Set the desired handler list
          # handler.list=apr,request,channelJni
          #
          # Override the default port for the socketChannel
          # channelSocket.port=8019
          # Default: 
          # channelUnix.file=${jkHome}/work/jk2.socket
          # Just to check if the the config  is working
          # shm.file=${jkHome}/work/jk2.shm
          
          # In order to enable jni use any channelJni directive
          # channelJni.disabled = 0
          # And one of the following directives:
          
          # apr.jniModeSo=/opt/apache2/modules/mod_jk2.so
          
          # If set to inprocess the mod_jk2 will Register natives itself
          # This will enable the starting of the Tomcat from mod_jk2
          # apr.jniModeSo=inprocess
          

          現(xiàn)在輪到workers2.properties,這個文件需要自己創(chuàng)建,內容如下(附件中有一個copy)
          紅色的這行要注意了,把"C:\Tomcat 5.0\work\"這個路徑修改成你自己的路徑,而jk2.shm這個文件不用擔心,它現(xiàn)在不存在也沒有關系,它會在需要的時候自動被創(chuàng)建。

          [shm:]
          info=Shared memory file. Required for multiprocess servers
          file=C:\Tomcat 5.0\work\jk2.shm
          size=1000000
          
          [channel.socket:localhost:8009]
          info=Ajp13 worker, connects to tomcat instance using AJP 1.3 protocol
          tomcatId=localhost:8009
          
          [uri:/jsp-examples/*]
          info=JSP examples, map requests for all JSP pages to Tomcat.
          context=/jsp-examples
          
          [uri:/servlets-examples/*]
          info=Servlet examples, map requests for all servlets to Tomcat.
          context=/servlets-examples
          

          看過網上的討論,有些朋友配置過程中的問題就出現(xiàn)在這里,所以多講幾句:
          這個文件中指定了解析jsp的目錄,也就是"http://xxxxx/dir/aa.jsp"這個url中的"dir",比如我們的網站中要增加/dir/這個路徑,并使這個路徑下面的jsp能夠被解析,那你就需要在workers2.properties文件中增加這樣一段話

          [uri:/dir/*]
          info=JSP examples, map requests for all JSP pages to Tomcat.
          context=/dir

          并且在Tomcat的工作目錄中建立"/dir/"這個目錄。比如我們到現(xiàn)在為止,Tomcat的工作目錄是默認的"/ROOT/",那我們就需要在"/ROOT/"路徑下新建"/dir/"目錄,并放置aa.jsp文件。重起服務之后,我們才能用"http://xxxxx/dir/aa.jsp"這樣的url來訪問aa.jsp文件。
          過去有的朋友誤以為"dir"是IIS工作目錄中的路徑,運行時無法顯示頁面,或者jsp代碼沒有解析,其實就是這個路徑設置的問題。
          值得注意的是如果IIS和Tomcat的工作目錄同時存在"/dir/",那么服務器會把此路徑連接至Tomcat處理。
          當你的Tomcat和IIS一起正常工作后,你可以隨時修改這個文件以增加新的目錄來支持jsp的運行。

          這里是關于worker2.properties這個文件更多的規(guī)則。

          右鍵系統(tǒng)欄中的Tomcat服務圖標,選擇"Stop service",關閉服務。

          在"管理工具-服務"中找到"Apache Tomcat"服務,并確定它已經啟動。


          Tomcat IIS 連接器

          你已經放置isapi_redirector2.dll在你的路徑下,本例子中是
          C:\Tomcat 5.0\bin\win32\i386

          現(xiàn)在需要添加一些必要的注冊信息到注冊表,redirector被IIS調用時會讀到。建立一個.reg文件

          Windows Registry Editor Version 5.00

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

          在記事本中寫入上面的文字,并保存為 reg.reg (附件中有一個copy)

          雙擊.reg文件

          成功則顯示如下:

          注冊表中可以看到:

          ?

          現(xiàn)在可以刪除這個.reg文件了


          Windows

          添加兩個系統(tǒng)環(huán)境變量,他們是CATALINA_HOMEJAVA_HOME.

          在桌面上右鍵"我的電腦",選擇"屬性-高級-環(huán)境變量"

          CATALINA_HOME 指向你的Tomcat安裝目錄,本例子中是 C:\Tomcat 5.0

          JAVA_HOME 指向Java SDK安裝目錄,本例子中是 C:\j2sdk1.4.2_04


          IIS

          安裝ISAPI篩選器

          進入ISAPI篩選器 界面

          點擊 添加 按鈕,鍵入一個新的篩選器名稱,名稱可以隨意起

          IIS Add ISAPI Filter dialog

          再點擊 瀏覽 按鈕,選擇isapi_redirector2.dll。本例子中是
          C:\Tomcat 5.0\bin\win32\i386\isapi_redirector2.dll

          點擊確定。IIS重起之后新的篩選器才會生效,我們先不重起,稍后再做。

          點擊確定保存修改,退出站點屬性對話框

          注意Note: 你可以選擇特定的站點進行設置,增加篩選器,也可以對所有站點同時增加篩選器
          在IIS樹中右鍵左側的"計算機",調出屬性,選擇"編輯"調出主屬性對話框

          調出主屬性對話框,添加篩選器。


          創(chuàng)建篩選器所需要的虛擬目錄

          選擇需要加載Tomcat服務站點,右鍵選擇新建,再選擇虛擬目錄

          創(chuàng)建虛擬目錄,別名為jakarta。注意這個名字是固定值,不要拼寫錯誤!

          指定目錄為isapi_redirector2.dll所在目錄. 本例子中是 C:\Tomcat 5.0\bin\win32\i386

          選擇執(zhí)行,使之可用

          成功建立虛擬目錄之后,你應該在管理其中看到如下顯示。

          ?

          重新啟動IIS服務

          選擇計算機,右鍵,選擇重新啟動IIS

          選擇重新啟動Internet服務,點擊確定

          操作系統(tǒng)中管理工具-事件查看器中可以查看服務的啟動情況,isapi_redirector2.dll會把它的出錯信息寫入事件查看器,而不是像較早版本那樣寫入一個文件中。

          啟動之后在IIS控制臺,站點屬性中的ISAPI篩選器的列表中,可以看到Tomcat連接器的狀態(tài),有綠色向上箭頭就對了


          測試

          Tomcat

          首先測試Tomcat安裝的例子能否運行,使用Tomcat自己的服務器和端口

          測試服務器中的servlets: http://localhost:8080/servlets-examples/

          測試服務器中的JSP: http://localhost:8080/jsp-examples/

          測試Tomcat管理界面: http://127.0.0.1:8080/admin/

          IIS

          現(xiàn)在我們訪問IIS中的同一個例子,來測試連接器是否工作,注意修改地址和端口跟你的IIS相符合

          http://localhost/servlets-examples/

          http://localhost/jsp-examples/

          ?

          如果一切正常,則你已經使得IIS5在Tomcat JK2 IIS 連接器的工作下可以解析jsp&servlet程序了,祝賀你。
          并樂意得到你的經驗和對此文章的反饋。(http://hh.cc163.com/form/cgi-bin/forums.cgi?forum=4)

          希望大家到討論區(qū)發(fā)表你的成功經驗,以幫助別人。(http://hh.cc163.com/form/cgi-bin/forums.cgi?forum=4)


          參考文獻

          JK Documentation(iishowto)
          http://virtualict.net/support/kb/iis6-Tomcat5-JK2.html


          原文完整版
          http://hh.cc163.com/java/NewIIS5+TomcatHowTo/NewIIS5+Tomcat5HowTo.htm

          ?

          ----------------------------------------------------------------
          Email: zself@vip.cc163.com
          http://hh.cc163.com
          Oicq:10743383

          posted on 2006-09-25 11:30 春輝 閱讀(365) 評論(0)  編輯  收藏 所屬分類: Tomcat 相關

          導航

          統(tǒng)計

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章分類

          文章檔案

          我的鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 旌德县| 鹤壁市| 杭锦旗| 阳山县| 安丘市| 肃北| 江孜县| 龙南县| 新宾| 金溪县| 德阳市| 扶风县| 乐平市| 霍山县| 鄂州市| 宁强县| 城固县| 东兴市| 陆川县| 济宁市| 哈尔滨市| 江山市| 汉川市| 高碑店市| 疏附县| 名山县| 资溪县| 绥芬河市| 成安县| 盐津县| 塔河县| 丹棱县| 新竹市| 贵南县| 莱阳市| 龙门县| 弥渡县| 武安市| 抚顺县| 瑞安市| 佳木斯市|