Win2003中apache2整合tomcat5和IIS6的方法_Web服務(wù)器教程

      編輯Tag賺U幣
      為了能在已經(jīng)存在IIS6的服務(wù)器上運(yùn)行自己的java程序,經(jīng)過歷時(shí)半年的嘗試,今天終于搞定了,好開心啊。
      最開始是用iis直接連接tomcat,找遍了網(wǎng)上所有的資料,可是死活也連不通,或許是iis的封閉吧,看來tomcat與iis遠(yuǎn)沒有成為朋友。
         于是只好另辟蹊徑,用apache監(jiān)聽80來做請求轉(zhuǎn)發(fā)了,請求到iis的站點(diǎn)就轉(zhuǎn)到相應(yīng)目錄,請求到tomcat下的站點(diǎn)就轉(zhuǎn)發(fā)到tomcat下,于是開始到處找這方面的資料,終于經(jīng)過反復(fù)試驗(yàn),右克服請求servlet出錯(cuò)的困難,現(xiàn)在終于可以繼續(xù)做自己的網(wǎng)站了。
         參考文檔:
         1.http://WEBlife.blogbus.com/s1659/index.html
         2.http://wiki.osportfolio.org/confluence/display/Technical/Apache+Tomcat+mod_jk+Integration
         第一篇文檔基本解決了所有的問題,第二篇文檔解決了請求servlet發(fā)生找不到目標(biāo)的問題
         下面就從零開始,一步步配置三個(gè)服務(wù)器,讓他們協(xié)調(diào)工作。
         1.下載安裝apache2
         下載apache2.0.55 for windows
         在官方網(wǎng)站上我怎么也找不到,奇怪。下載到本地后雙擊就可以安裝了,安裝完成后應(yīng)該在系統(tǒng)托盤中看到一個(gè)小圖標(biāo)了,是個(gè)羽毛加綠色播放箭頭的圖標(biāo),這表示正確安裝了,如果不能正確安裝,請確認(rèn)80端口沒有被別的服務(wù)器占有。
         2.下載安裝tomcat5
         Tomcat還是到官方網(wǎng)站下載,選擇5.5.17中core:zip,我比較習(xí)慣用這個(gè)壓縮包,解壓后設(shè)置環(huán)境變量就可以用了。在安裝路徑的bin里面運(yùn)行startup.bat就可以啟動(dòng)tomcat了。
         3.安裝IIS6.0
         將win2003的安裝盤插入光驅(qū),在添加或刪除程序中選擇“添加/刪除windows組件”在“windows組件向?qū)?rdquo;中選擇“應(yīng)用程序服務(wù)器”并打上勾,按向?qū)崾鞠乱徊竭M(jìn)行,就可以安裝了。IIS6.0安裝后并不能正常啟動(dòng),因?yàn)槟J(rèn)端口80被apache已經(jīng)占了。雙擊打開“管理工具/internet信息服務(wù)(IIS)管理器”,在“默認(rèn)網(wǎng)站(停止)”上右擊選擇“屬性”,在“網(wǎng)站”選項(xiàng)卡中修改“TCP端口”的80為88或者其他端口,確定。選中“默認(rèn)網(wǎng)站(停止)”然后單擊工具欄中的播放圖標(biāo),就可以啟動(dòng)IIS了,正常啟動(dòng)后“停止”字樣就消失了。
         4.測試3個(gè)服務(wù)器
         修改Apache安裝目錄/htdocs中的index.html.en改名為index.html,在瀏覽器輸入http://localhost回車如果看到apache的歡迎界面,說明apache正在運(yùn)行。在瀏覽器中輸入http://localhost:8080回車如果看到tomcat的歡迎界面,這表示tomcat運(yùn)行正常。在瀏覽器中輸入http://localhost:88回車如果看到“建設(shè)中”這樣的提示,表示iis正在運(yùn)行。
         5.配置apache與tomcat的連接
         第一步: 在http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.6
         下載mod_jk_1.2.6_2.0.50.dll文件,將其改名為mod_jk.so后放到apache2/modules目錄中。
        第二步: 打開記事本,輸入下列語句,以workers.properties為文件名保存在tomcat安裝目錄/conf目錄下:

      workers.tomcat_home=C:\Program Files\jakarta-tomcat-5.0.28
      workers.java_home=C:\Program Files\Java\jdk1.5.0_06
      ps=\
      worker.list=ajp13
      worker.ajp13.port=8009
      worker.ajp13.host=localhost
      worker.ajp13.type=ajp13
      worker.ajp13.lbfactor=1

        第三步:用記事本打開apache/conf/httpd.conf文件末尾,添加下面一段:

      LoadModule jk_module modules/mod_jk.so
      JkWorkersFile "D:\Program Files\jakarta-tomcat-5.0.28\conf\workers.properties"
      <VirtualHost *:80>
      ServerAdmin rabbit69@openria.com
      ServerName localhost
      DirectoryIndex index.html index.htm index.jsp
      JkMount /* ajp13
      JkAutoAlias "C:\Program Files\jakarta-tomcat-5.0.28\webapps"
      <Directory "C:\Program Files\jakarta-tomcat-5.0.28\webapps">
      Options Indexes FollowSymLinks
      allow from all
      </Directory>
      </VirtualHost>


         保存,停止apache服務(wù),在啟動(dòng),就可以將新配置應(yīng)用了。
         6.測試apache與tomcat的連接
         在服務(wù)器中輸入http://localhost回車如果看見的是tomcat的歡迎界面,就表示apache和tomcat整合成功了,localhost后面加上jsp-examples目錄或者servlet-examples目錄就可以看到下面的例子,為了讓servlet運(yùn)行,我可是費(fèi)了半天勁,修改這個(gè)httpd.conf文件。
         7.配置apache與IIS6的連接
         第一步:修改httpd.conf文件,啟用proxy模塊
         將文件中的LoadModule proxy_module modules/mod_proxy.so和LoadModule proxy_http_module modules/mod_proxy_http.so這兩句的“#”去掉就可以了。
         第二步:增加IIS的虛擬主機(jī)
        在httpd.conf文件末尾加入以下代碼:

      <VirtualHost *:80>
      ServerAdmin rabbit69@openria.cn
      ServerName localhost
      DocumentRoot "C:/Inetpub/wwwroot"
      DirectoryIndex index.html index.htm index.asp
      Alias /test "C:/Inetpub/wwwroot"
      <Directory "C:/Inetpub/wwwroot">
      Options MultiViews
      AllowOverride None
      Order allow,deny
      Allow from all
      </Directory>
      ProxyPass / http://127.0.0.1:88/
      ProxyPassReverse / http://127.0.0.1:88
      </VirtualHost>


         保存,并重啟apache就可以做測試了。
         8.測試apaceh與IIS的連接
        寫一個(gè)asp頁面,hello.asp:

      <HTML>
      <HEAD>
      <TITLE>Hello World Sample</TITLE>
      </HEAD>
      <BODY>
      <% Response.Write "Hello World" %>
      </BODY>
      </HTML>  


        放到C:/Inetpub/wwwroot下面,在瀏覽器中訪問http://localhost/test/hello.asp回車如果出現(xiàn)“hello world”字樣就表示配置成功了。如果頁面出現(xiàn)空白,在Internet信息服務(wù)(IIS)管理器中的web服務(wù)擴(kuò)展里將“active server page”允許,然后清空緩存,刷新頁面應(yīng)該就可以看見hello world了。
         具體參數(shù)的含義就不多說了,上面的參考文檔有介紹。
         后記:
        一直以為這個(gè)整合問題解決不了了,但是我還是不甘心,為什么別人能調(diào)通,我就調(diào)不通,苦腦啊,今天終于解決了,昨天晚上還弄到1點(diǎn)多,所有的辛苦沒有白下,寫下這個(gè),做個(gè)紀(jì)念,也希望能對碰到此問題的網(wǎng)友有幫助,沒有互聯(lián)網(wǎng)就沒有大家的成長。

      來源:網(wǎng)絡(luò)搜集//所屬分類:Web服務(wù)器教程/更新時(shí)間:2013-04-13
      相關(guān)Web服務(wù)器教程