Tomcat 7 GZIP-Komprimierung funktioniert nicht
Habe ich die folgenden Zeilen in der tomcat conf/server.xml Datei die gzip-Komprimierung aktivieren, aber es funktioniert nicht. Die Seiten sind noch uncompressesd.
<Connector port="8080"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/css,
text/javascript,text/json,application/x-javascript,
application/javascript,application/json"/>
Irgendeine Idee?
Kommentar zu dem Problem
habe noch nie gesehen, wie form, werden interessant, wenn die Lösung erschien. Nur für Sie Informationen über unser Projekt verwenden wir folgenden Weg blog.max.berger.name/2010/01/jetty-7-gzip-filter.html
Ist Ihre Tomcat-Instanz angeführt von Apache auf port 80 und Tomcat auf die direkt zugegriffen wird, auf port 8080?
Hallo david..u haben Recht..es wird angeführt von apache auf port 80 und das ist der Grund, ich bekomme nicht komprimierte Dateien...wenn ich meinen tomcat auf port 8080, ich bekomme komprimierte Dateien....danke für den Hinweis mich in die richtige Richtung..
Fügte er als Antwort, damit Sie es akzeptieren können 🙂
InformationsquelleAutor der Frage N.. | 2013-05-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Tomcat angeführt von Apache auf port 80, so müssen Sie zum aktivieren der Komprimierung in Apache selbst. Die Komprimierung von Tomcat wird nur funktionieren, wenn du direkt auf den port 8080.
InformationsquelleAutor der Antwort David Levesque
Unter Windows, stieß ich auf dieses Verhalten beim Versuch, aktivieren Sie vorübergehend content-Kompression in meiner Entwicklungs-Umgebung zu gewinnen, ist ein grobes Verständnis der gesamten Nutzlast von einer Seite, die in meiner Anwendung.
Kann ich bestätigen, dass ESET NOD32 Antivirus in der Weise Verhalten, dass @bugs_ beschreibt in seiner Antwort auf diese Frage und ich kann auch bestätigen, dass die Ausführung Fiddler4 hat den gleichen Effekt. Aber beide schließen Fiddler und deaktivieren NOD32 den HTTP-scan hat das problem nicht lösen, das zu tun, musste ich deaktivieren Sie die Verwendung von 'sendfile' in mein Anschluss wie folgt:
Wichtige Attribut, hier ist
useSendfile="false"
Ich bin mit Apache Tomcat 8, unter Windows. Der Tomcat-Dokumentation (http://tomcat.apache.org/tomcat-8.0-doc/config/http.html) sagt Folgendes über
useSendfile
:Und diese über
compression
:InformationsquelleAutor der Antwort Xharlie
In meinem Fall hat es nicht funktioniert, weil der Antivirus (ESET, Windows)
Es wurde festgestellt, irgendwo vor der browser. Es entpackt Körper und entfernen Sie "Content-Encoding" - header. Für die browser-Antwort sah, wie normale, nicht komprimierte Antwort. Auch in Fiddler war es bereits dekomprimiert.
Https-Antworten wurden funktioniert, aber http resposes wurden decompresed von ESET.
Ist es nicht genug. Drehen Sie ESET aus. Ich hatte zu gehen Sie zu "erweiterte Einstellungen" -> "Web access protection" -> "HTTP, HTTPS", und schalten Sie es aus, es
Wenn Sie dienen Dateien von der Festplatte, müssen Sie möglicherweise die option hinzufügen useSendFile="false" in die Buchse.
InformationsquelleAutor der Antwort bugs_
Ich wurde getestet, ähnlich
server.xml
änderungen in meiner lokalen Entwicklungsumgebung und war frustriert, dass es nicht funktioniert entweder.Mein Problem war, dass ich änderungen an meiner lokalen Tomcat-installation (C:\apache-tomcat-8.0.5), dass ich ausgewählt, wenn mit der
Servers window -> (right-click) -> New -> Server
dialog in der Spring Tool Suite.Jedoch, wenn veröffentlicht, die aktuelle tomcat-Verzeichnis verwendet wurde, befindet sich in (workspace-Ordner)\.metadata\.plugins\org.eclipse.wst.server.core\tmp0.
Können Sie die veröffentlichten Speicherort der rechten Maustaste auf den server und wählen Sie "Durchsuchen Einsatzort..."
Von dort aus können Sie aktualisieren Sie die entsprechende
server.xml
- Datei, oder Sie können Sie löschen und erneut hinzufügen, die server.InformationsquelleAutor der Antwort Matthew Steven Monkan