Próbowałem utworzyć reguły wychodzące w IIS 7.5 w systemie Windows 2008 R2 w witrynie z włączonymi statycznymi stronami HTML i włączoną kompresją.
Jeśli mam włączoną dowolną formę kompresji (statyczną lub dynamiczną), pojawia się ten błąd:
HTTP Error 500.52 - URL Rewrite Module Error. Outbound rewrite rules cannot
be applied when the content of the HTTP response is encoded ("gzip").
Wyłączenie kompresji nie jest tak naprawdę opcją ze względu na duży negatywny wpływ, jaki miałby na ładowanie strony.
Wyobrażam sobie, że każdy, kto używa wychodzących reguł przepisywania, napotka ten błąd, ponieważ zawsze chciałbyś mieć włączoną kompresję dla treści tekstowych.
Spojrzałem na kilka sugestii, jak to zrobić:
/programming/3713804/url-rewrite-outbound-rules-iis7/4363301#4363301
i
http://forums.iis.net/p/1165899/1937454.aspx#1937454
Ale nadal pojawia się ten sam błąd.
Czy ktoś ma to do pracy? Jeśli tak to jak?
Odpowiedzi:
Proszę odnieść się: https://blogs.msdn.microsoft.com/friis/2016/08/25/iis-with-url-rewrite-as-a-reverse-proxy-part-2-dealing-with-500-52 -status-kody /
Wychodzących reguł przepisywania nie można zastosować, gdy treść odpowiedzi HTTP jest zakodowana („gzip”).
Jest tak, ponieważ odpowiedzi przychodzące z serwera zaplecza korzystają z kompresji HTTP, a przepisywanie adresów URL nie może modyfikować odpowiedzi, która jest już skompresowana. Powoduje to błąd przetwarzania reguły wychodzącej, co powoduje kod statusu 500.52.
źródło