IIS7和Tomcat7整合,即IIS7和Tomcat共用80端口前端
背景: 最近公司有一個項目要上線,須要用到iis和tomcat整合,共用80端口。因爲公司的數據都很是重要,只經過端口映射到外網的80端口,其它端口都不開放。 我部署的環境是Win2008R2_x64, IIS7和JDK1.7.0_51,tomcat7.0.59java
一.關閉Windows2008中IE加強的安全配置。windows
服務器管理器----配置IE ESC----管理員和用戶都選擇禁用 .如圖。後端
安裝:api
1. 右鍵點擊 「計算機」,在彈出菜單中選擇「管理」選項,在服務器管理器左側界面瀏覽器
2. 點擊 「角色」選項,以下圖:tomcat
3. 點擊「添加角色」按鈕後,彈出以下界面安全
4. 選擇「角色」列表中的「Web服務器(IIS)」和「應用程序服務器」,點擊「下一步」服務器
5. 點擊「添加必須的功能」按鈕後,進行下一步操做:jsp
下一步
6. 安裝完成後,點擊下圖中的「關閉」按鈕完成Web服務器的安裝。
7. 驗證iis是否工做正常 瀏覽器中輸入 http://localhost 是否出現
三。 安裝JDK1.7.0_51
下載JDK1.7.0_51. 安裝過程省略,直接下一步,默認路徑便可。
下載地址:http://down.51cto.com/data/2054127
windows環境下安裝JDK以後環境變量是這樣配置的:
前是變量名,後爲變量值。(JAVA_HOME和CLASSPATH須要新建,PATH不須要)
JAVA_HOME:C:\Program Files\Java\jdk1.7.0_51
PATH:%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin
CLASSPATH:.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
驗證: java -version
四。安裝TOMCAT 7.0.59
下載tomcat7,直接下載解壓就能夠了, 工做路徑爲D:/tomcat7/
下載地址:http://down.51cto.com/data/2054129
五。IIS與TOMCAT整合
建立註冊表tomcat_IIS.reg文件。
下載地址:http://down.51cto.com/data/2054131
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ApacheSoftware Foundation\Jakarta Isapi Redirector\1.0]
"extension_uri"="/jakarta/isapi_redirect.dll"
"log_file"="D://tomcat7//logs"
"log_level"="debug"
"tomcat_start"="D://tomcat7//bin//tomcat.batstart"
"tomcat_stop"="D://tomcat7//bin//tomcat.batstop"
"worker_file"="D://tomcat7//conf//workers.properties"
"worker_mount_file"="D://tomcat7//conf//uriworkermap.properties"
注意:導入註冊表後必定要使用regedit打開註冊表,查看是否導入成功。註冊表中是否包含上述的項和字符串值。
不少時候提示導入成功卻註冊表中沒有該項
2. 在tomcat安裝目錄下conf文件夾下創建兩個文件
下載地址:http://down.51cto.com/data/2054132
文件1:workers.properties
workers.tomcat_home=D:\\Tomcat7
workers.java_home=C:\\ProgramFiles\\Java\\jdk1.7.0_51
ps=\
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
文件2:uriworkermap.properties
/*.jsp=ajp13
/*.do=ajp13
/services*=ajp13
/servlet*=ajp13
/researchreport/*=ajp13
/investerminal/*=ajp13
/researchreport2/*=ajp13
/issuu/*=ajp13
/newInvesterminal/*=ajp13
/NewWeb/*=ajp13
/UserRangeServer/*=ajp13
/ROOT/*=ajp13
/docs/*=ajp13
/examples/*=ajp13
/host-manager/*=ajp13
/manager/*=ajp13
3 . 拷貝isapi_redirect.dll(整合插件)到tomcat安裝目錄下conf文件夾
下載地址:http://down.51cto.com/data/2054133
4. 打開IIS7.5,點擊左邊的計算機名在IIS管理器中的「ISAPI和CGI限制」裏面右鍵添加,路徑選擇爲tomcat安裝目錄下conf文件夾的isapi_redirect.dll,並設定「容許執行擴展路徑」,描述名可取jakarta
5. 接着單擊Default Web Site,選擇ISAPI篩選器,並右鍵添加篩選器,名稱可取jakarta,可執行文件選擇tomcat安裝目錄下conf文件夾isapi_redirect.dll
6. 在Default Web Site上右鍵"添加虛擬目錄",別名取jakarta(必須是jakarta名稱,名稱必須和註冊表裏"extension_uri"的值的名字一致),路徑指向tomcat安裝目錄下conf文件夾,即isapi_redirect.dll所在目錄。
7. 點擊虛擬目錄jakarta,雙擊「處理程序映射」,最右邊(第三分欄裏面)選擇「編輯功能權限...」將全部權限(執行權限)選上。
8. 在Default Web Site上,雙擊「處理程序映射」,右鍵"添加腳本映射",請求路徑寫*.jsp,可執行文件選擇tomcat安裝目錄下conf文件夾isapi_redirect.dll。名稱隨便寫,例如JSP。
9 .驗證 訪問http://127.0.0.1/index.jsp。
原理: 前端IIS主要負責靜態頁面的請求,動態請求會經過整合插件轉給tomcat(後端)來處理。
***************************** 六 。遇到的問題***********************************
我在部署過程當中,遇到幾個問題,以下:
整合插件isapi_redirect.dll的目錄必定要和workers.properties、uriworkermap.properties放在一塊兒,都放到tomcat的conf目錄當中,否則會報錯(404錯誤)。
2. 新建註冊表文件的時候,注意32位系統和64位系統路徑是不同的,這點要特別注意,導入註冊表以後,還要驗證一下是否導入成功。
32位系統註冊表路徑:
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0
64位系統註冊表路徑:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ApacheSoftware Foundation\Jakarta Isapi Redirector\1.0