Iis

IIS 7.5 反向代理 URL 使用 gzip 重寫到網站

  • May 2, 2014

如果我們擁有 www.ourdomain.com 並想將 url 重寫為 www.google.com,我們將如何處理 google 域上的 gzip 壓縮。我正在嘗試做一個概念證明,我相信問題是我們試圖重寫的網站使用 gzip,所以 IIS 無法讀取內容?我已經禁用了我們這邊的所有壓縮。我們需要某種先決條件嗎?

HTTP 錯誤 500.52 - URL 重寫模組錯誤。當 HTTP 響應的內容被編碼(“gzip”)時,不能應用出站重寫規則。

   <?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <system.webServer>
   <urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
   <rewrite>
     <outboundRules>
       <rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1">
         <match filterByTags="A, Form, Img" pattern="https://google.com/(.*)" />
         <action type="Rewrite" value="http{R:1}://ourdomain.com/{R:2}" />
       </rule>
     </outboundRules>
     <rules>
       <rule name="ReverseProxyInboundRule1" stopProcessing="true">
         <match url="(.*)" />
         <action type="Rewrite" url="http://google.com/{R:1}" />
       </rule>
     </rules>
   </rewrite>
 </system.webServer>
</configuration>

在玩了很多之後找到了答案

     <serverVariables>
       <set name="HTTP_Accept-Encoding" value="" />
     </serverVariables>

引用自:https://serverfault.com/questions/592704