Das Verhalten dieser Funktionen wird durch Einstellungen in der php.ini beeinflusst.
Die zlib-Erweiterung gibt Ihnen die Möglichkeit, Ihre Seiten on-the-fly transparent zu komprimieren, wenn der Browser dies unterstützt. Dafür gibt es drei Optionen in der Konfigurationsdatei php.ini.
Name | Standard | Veränderbar | Changelog |
---|---|---|---|
zlib.output_compression | "0" | PHP_INI_ALL | Verfügbar seit PHP 4.0.5. |
zlib.output_compression_level | "-1" | PHP_INI_ALL | Verfügbar seit PHP 4.3.0. |
zlib.output_handler | "" | PHP_INI_ALL | Verfügbar seit PHP 4.3.0. |
Hier eine kurze Erklärung der Konfigurationsoptionen:
zlib.output_compression
boolean/integer
Wenn diese Option in der php.ini oder der Apachekonfiguration auf "On" gesetzt ist, werden die Seiten komprimiert, wenn der Browser einen "Accept-Encoding: gzip"- oder einen "deflate"-Header sendet. Zu den normalerweise vom Server gesendeten Headern werden nun "Content-Encoding: gzip" (respektive "deflate") und "Vary: Accept-Encoding" hinzugefügt. Zur Laufzeit kann die Option nur gesetzt werden, bevor irgendeine Ausgabe gesendet wurde.
Diese Option akzeptiert auch Integerwerte anstelle des boolschen On/Off, wenn Sie diese verwenden, können Sie die Ausgabepuffergröße festlegen (der Standardwert ist 4KB).
Hinweis:
output_handler muss leer sein, wenn diese Option den Wert "On" hat! Verwenden Sie statt dessen zlib.output_handler.
zlib.output_compression_level
integer
Der Kompressionsgrad für die transparente Ausgabekomprimierung. Geben Sie einen Wert zwischen 0 (keine Kompression) und 9 (stärkste Kompressionsrate) an. Der Vorgabewert -1 lässt den Server darüber entscheiden, welchen Kompressionsgrad zu verwenden ist.
zlib.output_handler
string
Sie können keine zusätzlichen Outputhandler angeben, wenn Sie zlib.output_compression aktiviert haben. Diese Einstellung tut das Gleiche wie output_handler, allerdings in einer anderen Reihenfolge.