2013-04-29 174 views
0

我想弄清楚是否有可能在IIS中實現一個反向代理服務器,實際上是擊中了不同的Web服務器端點。我用它來遍歷同一臺機器上的端口,但從來沒有到過不同的機器。這樣做的目的是我正在編寫一個需要連接到另一臺服務器上的數據的Javascript應用程序,並且我得到了相同的原始錯誤。IIS反向代理服務器到不同的服務器

注意:不幸的是,將遠程服務器和服務更改爲接受JSONP或CORS不是一種選擇。

下面是使用IIS反向代理

<system.webServer>  
     <rewrite> 
      <rules> 
       <rule name="Reverse Proxy to Different Port" stopProcessing="true"> 
        <match url="^name/(.*)" /> 
        <action type="Rewrite" url="http://localhost:5984/{R:1}" /> 
       </rule> 
      </rules> 
     </rewrite> 
</system.webServer> 
+0

那麼問題是什麼? – 2013-04-29 19:18:36

+0

@StevenVondruska嗯......我需要找出是否有可能使用反向代理來調用不同的服務器IP,如果是的話,怎麼做。 – Rob 2013-04-29 19:37:24

+0

您是否在IIS中安裝了[應用程序請求路由(AAR)](http://www.iis.net/downloads/microsoft/application-request-routing)? – 2013-04-29 19:44:15

回答

5

爲了使這項工作端口跳躍的配置,你需要安裝要像反向代理的IIS服務器上Application Request Routing (AAR)。在此之後,然後添加以下到web.config中:

<system.webServer>  
    <rewrite> 
     <rules> 
      <rule name="Reverse Proxy to Different Port" stopProcessing="true"> 
       <match url="^name/(.*)" /> 
       <action type="Rewrite" url="http://[hostname here]:[port number here]/{R:1}" /> 
      </rule> 
     </rules> 
    </rewrite> 
</system.webServer> 

所在的路徑與name/開始到其他服務器這將重定向任何要求。因此,如果您在遠程服務器上尋求/foo/bar,則需要使用Javascript向配置了反向代理的IIS服務器請求/name/foo/bar

相關問題