ID: 32283
Updated by: [EMAIL PROTECTED]
Reported By: plasmahh at gmx dot net
-Status: Open
+Status: Feedback
Bug Type: Output Control
Operating System: Linux
PHP Version: 5CVS-2005-03-14
New Comment:
What headers are being sent by the browser making the request?
Previous Comments:
------------------------------------------------------------------------
[2005-03-14 19:45:02] plasmahh at gmx dot net
Does not work too with the snapshot... I have changed parts of the
php_enable_output_compression as followed, which works around my
problem...
if (php_memnstr(Z_STRVAL_PP(a_encoding), "gzip", 4,
Z_STRVAL_PP(a_encoding) + Z_STRLEN_PP(a_encoding))) {
ZLIBG(compression_coding) = CODING_GZIP;
sapi_add_header("Content-Encoding: gzip",
sizeof("Content-Encoding: gzip") - 1, 1);
} else if (php_memnstr(Z_STRVAL_PP(a_encoding), "deflate", 7,
Z_STRVAL_PP(a_encoding) + Z_STRLEN_PP(a_encoding))) {
ZLIBG(compression_coding) = CODING_DEFLATE;
sapi_add_header("Content-Encoding: deflate",
sizeof("Content-Encoding: deflate") - 1, 1);
} else {
return FAILURE;
}
------------------------------------------------------------------------
[2005-03-12 14:42:12] [EMAIL PROTECTED]
Please try using this CVS snapshot:
http://snaps.php.net/php5-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5-win32-latest.zip
------------------------------------------------------------------------
[2005-03-12 00:10:04] plasmahh at gmx dot net
Description:
------------
When setting zlib.output_compression in php.ini and outputting any page
(tried with <? phpinfo(); ?>) no proper headers are sent. From zlib
manual :
Whether to transparently compress pages. If this option is set to "On"
in php.ini or the Apache configuration, pages are compressed if the
browser sends an "Accept-Encoding: gzip" or "deflate" header.
"Content-Encoding: gzip" (respectively "deflate") and "Vary:
Accept-Encoding" headers are added to the output.
It looks like in zlib.c the php_enable_output_compression function
should enable the compression, which it also does (the data is sent
gzipped properly if the client has a proper Accept-Encoding header
sent) but nowhere in there is a header sent with Content-Encoding. The
only occurence is in the ob_gzhandler but it seems like this is a
totally different feature. I have set a header output in my
php_enable_output_compression and it works for me, dont know if this is
the proper solution.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=32283&edit=1