Frage

I aktiviert gzip-Komprimierung auf meiner Website, und mit den folgenden Tools getestet:

Obwohl, Firefox und all seine Erweiterungen (Firebug, YSlow und Google Page Speed) sagen, dass sie nicht-komprimierten Inhalt erhalten.

text / html wird von PHP ob_gzhandler komprimiert, die auch über Header kümmert.

Ich verwende Proxy nicht.

Was mache ich falsch?

War es hilfreich?

Lösung

Das ist nicht wirklich die Antwort, die Sie vielleicht erwarten, aber haben Sie versuchen Komprimieren nicht aus Daten mit PHP, aber mit Apache?

Dies kann getan werden, Verwendung mod_deflate .

Paar Dinge:

  • es würde bedeuten, weniger Berechnungen für PHP
  • es würde auch bedeuten, (und das ist der schönste Teil ; -) ) , dass Ihre CSS / JS-Dateien komprimiert sein könnte; die Größe von denen man bedenkt, heute, ist es vielleicht nicht eine schlechte Sache zu komprimieren sie sein ...


Als Nebenbemerkung: uns helfen herauszufinden, was mit der Kompression falsch läuft von PHP, können Sie weitere Informationen geben? Wie die URL Ihrer Website (wenn es öffentlich) , und einige Code?


EDIT jetzt, dass wir die URL haben: http://ego.pestaa.hu /

Wenn ich auf diese Seite gehen, sind die Antwort der Header wie folgt:

HTTP/1.x 200 OK
Date: Sat, 01 Aug 2009 21:53:37 GMT
Server: Apache
X-Powered-By: PHP/5.2.6
**Content-Encoding: gzip**
Vary: Accept-Encoding
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html

(mit Firefox 3.5 mit Livehttpheaders Erweiterung)

Die drei Prüfstellen Sie auch angezeigt sagen, dass Ihre Seite gzipped wird.
Haben Sie gefunden, was das Problem war?

Sind Sie sicher, das ist nicht etwas von Ihrem Browser kommt, das würde die folgenden Header in der Anforderung nicht senden:

Accept-Encoding: gzip,deflate

EDIT nach anderer Antwort

Zitat aus den Kommentaren:

  

die Quelle des Problems ist wahrscheinlich nicht   meine Website, aber meine isp / Browser / Router.   Einer von ihnen kann jeder dekomprimieren   Komponente, bevor sie interne erreicht   Prozesse.

Oh, wenn das Problem nicht Ihre Website, ich glaube, ich völlig die Frage falsch verstanden - traurig über die :-( Ich dachte, Sie nicht wissen, wie man Server Inhalt von Ihrer Website gzip.
Und ich glaube, ich bin nicht der einzige, btw

Wenn das Problem nichts mit Ihrem Website-Konfiguration zu tun, dann zwei Möglichkeiten:

  • vielleicht eine Fehlkonfiguration von Firefox? Wenn Sie about:config gehen, was sagt die network.http.accept-encoding? Für mich ist es gzip,deflate
  • , wenn das Problem von Ihrem ISP oder so etwas kommt, gibt es nichts niemandes tun kann ...

Andere Tipps

Versuchen Sie, die Live HTTP Headers Firefox-Plugin zusätzlich zu den anderen. Es öffnet sich ein Fenster, um die genaue Request / Response-Header zeigt, wie sie hin und her gehen, so dass Sie wissen ohne Zweifel, was die accept-encoding und Antwort-Codierung ist.

Haben Sie versucht, so dass gzip nur in Apache / Ihrem Webserver statt / als auch?

  • Sind Sie sicher, dass Sie testen die gleichen URLs mit den Firefox-Erweiterungen?
    • Verwenden der ob_gzhandler in PHP wird die Ausgabe Ihrer PHP-Seiten zu komprimieren, aber YSlow und andere warnen Sie auch über unkomprimierte CSS / JavaScript-Dateien.
  • Überprüfen Sie, ob der Browser die korrekten Header sendet. Ein Browser sendet in der Regel des „Accept-Encoding: gzip“ Header dem Skript / Web-Server zu sagen, es komprimierte Inhalte übernimmt. Die Testskripte sicher, dass sendet aber Ihr Browser möglicherweise nicht.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top