Cara menggunakan IIS URL Rewrite dengan kompresi gzip

13

Saya sudah mencoba membuat aturan keluar di IIS 7.5 pada Windows 2008 R2 di situs yang memiliki halaman HTML statis dan kompresi diaktifkan.

Jika saya memiliki segala bentuk kompresi diaktifkan (statis atau dinamis) saya mendapatkan kesalahan ini:

HTTP Error 500.52 - URL Rewrite Module Error. Outbound rewrite rules cannot
be applied when the content of the HTTP response is encoded ("gzip").

Mematikan kompresi sebenarnya bukan pilihan karena dampak negatif besar yang akan terjadi pada kinerja pemuatan laman.

Saya membayangkan siapa pun yang menggunakan aturan penulisan ulang keluar akan mengalami kesalahan ini, karena Anda selalu ingin kompresi diaktifkan untuk konten tekstual.

Saya telah melihat beberapa saran agar ini berfungsi:

/programming/3713804/url-rewrite-outbound-rules-iis7/4363301#4363301

dan

http://forums.iis.net/p/1165899/1937454.aspx#1937454

Tapi saya masih mendapatkan kesalahan yang sama.

Adakah yang punya ini untuk bekerja? Kalau begitu bagaimana?

mpipe3
sumber
Saya punya masalah lain ... stackoverflow.com/questions/30806106/…
Pengembang
1
Mengapa Anda menggunakan aturan penulisan ulang keluar? Bisakah Anda memberikan contoh salah satu aturan ini untuk konteks? Mungkin aturan penulisan ulang yang normal akan cukup?
Anthony Kolka

Jawaban:

1

Silakan merujuk: https://blogs.msdn.microsoft.com/friis/2016/08/25/iis-with-url-rewrite-as-a-reverse-proxy-part-2-dealing-with-500-52 -status-codes /

Aturan penulisan ulang keluar tidak dapat diterapkan ketika konten respon HTTP dikodekan ("gzip").

Ini karena respons yang datang dari server back end menggunakan HTTP Compression, dan penulisan ulang URL tidak dapat mengubah respons yang sudah dikompresi. Ini menyebabkan kesalahan pemrosesan untuk aturan keluar menghasilkan kode status 500,52.

AKS
sumber