2016-06-21 21 views
1

Ich habe eine Server 2012 R2-Box mit IIS. Ich habe versucht, die Komprimierung für mehrere Websites zu aktivieren, die auf dieser Box ausgeführt werden, aber ich kann nicht herausfinden, warum es nicht funktioniert. Meine Anforderungsheader zeigen alle accept-encoding, aber die Antwortheader sind immer Transfer-Encoding: chunked und Vary: Accept-Encoding. Die folgenden Schritte wurden unternommen, um zu versuchen durchgeführt gzip Kompression Funktion zu erhalten:Gzip-Komprimierung funktioniert nicht mit IIS 8.5

  1. Dynamische und statische Kompression hat auf jeder Seite und auf der Maschinenebene
  2. Beiden Kompressionsverfahren von Server-Manager
  3. installiert sind aktiviert Httpcompression und urlCompression Knoten wurden manuell hinzugefügt
  4. Mime-Typen web.configs sind zur Komprimierung definiert
  5. frequentHitThreshold wurde auf 1 gesetzt, so dass alle Inhalte sollten nach dem ersten Versuch zusammengedrückt werden, um darauf zuzugreifen

Eine Ablaufverfolgung wurde durchgeführt, um zu sehen, warum keine Komprimierung stattfindet. Die einzige Information, die ich habe ist der Code DYNAMIC_COMPRESSION_NOT_SUCCESS mit einem Grund von 1.

Hier sind die Header:

GET http://redactedservername:8082/ HTTP/1.1 
Host: redactedservername:8082 
Connection: keep-alive 
Cache-Control: max-age=0 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
Upgrade-Insecure-Requests: 1 
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36 
DNT: 1 
Accept-Encoding: gzip, deflate, sdch 
Accept-Language: en-US,en;q=0.8 
Cookie: ASP.NET_SessionId=gnqovt55ggt22lycufudc0ns 

`

HTTP/1.1 200 OK 
Cache-Control: private 
Content-Type: text/html; charset=utf-8 
Vary: Accept-Encoding 
Date: Wed, 22 Jun 2016 14:00:57 GMT 
Transfer-Encoding: chunked 

Welche weiteren Schritte durchgeführt werden können Kompression an die Arbeit ?

+0

wollen Sie vielleicht auch die 'doDiskSpaceLimiting' überprüfen,' dynamicCompressionDisableCpuUsage' und 'staticCompressionDisableCpuUsage' Einstellungen https://www.iis.net/configreference/system.webserver/httpcompression – keshav

+0

die DisableCpuUsage Schwellen deutlich über der CPU-Auslastung sind und doDiskSpaceLimiting ist auf false festgelegt – Steve

+0

Verbinden Sie sich direkt mit IIS (Proxy, etc.)? Könnten Sie die HTTP-Anfrage und die HTTP-Antwort teilen? –

Antwort

7

Die Komprimierung funktionierte, aber ESET Antivirus übernahm die Überwachung des Web-Datenverkehrs. Dadurch wurde die Antwort geändert und ich habe die gzip-Inhaltscodierung nicht wie erwartet erhalten. Das Deaktivieren von ESET und das erneute Testen haben gezeigt, dass die Komprimierung funktioniert hat.

+3

Das gleiche für mich, aber ich hatte BitDefender läuft. Toller Fund! – jmw

+0

Sparte mir eine Menge Zeit Debugging, danke! – jhovgaard

+0

Das ist großartig, ich habe mehrere Tage damit verbracht, dieses Problem zu untersuchen. Du hast mein Leben gerettet :) –