標籤:com arch res nload apach 管理系統 result 添加 sof
目錄
IIS 反向 Proxy可以將請求的網址重寫到其它網址,達到轉寄的目的。一般用於一台伺服器只允許開啟80連接埠,而80連接埠又被IIS使用,此時需要在IIS中設定URL重寫,將請求轉寄到指定 IP:連接埠
或網址
環境
WindowServer 2008 IIS7
Apache 整合在WampServer
Tomcat
測試程式:微擎(PHP) 、 某管理系統(Java)
工具
Application Request Routing(ARR x64)(ARR x32)
URL Rewrite(x64 x32)
需求
伺服器只允許開放 80 連接埠,要求 IIS反向 Proxy到其它伺服器,使得 可以通過次層網域訪問Apache/Tomcat服務。
假設一個環境:伺服器中開啟了IIS ,頂層網域(test.com)可以訪問到IIS的預設網站,但是我在Apache上運行著PHP的程式,所以想要通過次層網域(a.test.com)來訪問到Apache的服務(127.0.0.1:808),通過次層網域(b.test.com)訪問Tomcat(127.0.0.1:8080)
教程反向 Proxy
1. 在使用反向 Proxy前,我們需要在IIS中安裝 ARR 工具和 URL Rewrite 。
安裝方法很簡單,只需要開啟上面兩個工具的連結將它們下載下來並安裝就可以了。
2. 不過還有另一個快捷的安裝渠道,微軟官方有一個叫做 Web平台安裝程式 可以直接一鍵安裝。
不過使用 Web平台安裝程式 我遇到一個問題,介面一直在載入中無法進入安裝程式介面。所以你如果無法載入的話,就用第一種方法
安裝完成後開啟IIS ,可以看到出現了兩個功能( Application Routing Request
、URL 重寫
)
3. 開啟 Application Request Routing
選擇 Server Proxy Settings
4. 勾選 Enable proxy
。點應用後退出
5. 指定一個網站,對它進行URL重寫
如 需要對 a.test.com 進入 URL重寫,就點 a.test.com 網站中的URL重寫功能
6. 添加規則
- 入站規則
- 空白規則
7. 添加配置
- 名稱隨意
- 模式寫
^(.*)
- 添加條件 - 條件輸入
{HTTP_HOST}
模式輸入 ^a.test.com$
- 操作類型預設重寫
- 重寫URL :
http://127.0.0.1:808/{R:1}
,這個連結資料表示要跳轉的地址,如果你需要跳轉到Tomcat則可以將連接埠改成8080
8. 儲存好後,就可以直接在瀏覽器訪問 a.test.com 了
總結
- 如果需要反向 ProxyTomcat,只需要將URL重寫地址寫成Tomcat的連結就可以了
- 我用WampServer的微擎測試程式時,可以重寫到Apache,但是提交登入的時候會出現登入不上,但是在伺服器中直接存取 Apache登入又可以登入。原因是
PHP的代碼驗證問題
。這種辦法就修改下源碼檔案吧,或者你就不要用IIS的URL重寫了,直接在IIS中配置一個PHP的請求映射,在IIS中運行PHP
IIS 反向 Proxy到 Apache、Tomcat