GZip компрессия. не могу разобраться

Moby

Guest
GZip компрессия. не могу разобраться

прочитал статью о компрессии данных средствами gzip, в статье приводится рабочий пример:
PHP:
<?
// Start the output buffer
ob_start();
ob_implicit_flush(0);

print("I'm compressed!n");
$contents = ob_get_contents();
ob_end_clean();

header("Content-Encoding: gzip");

echo "x1fx8bx08x00x00x00x00x00";

$Size = strlen($contents);
$Crc = crc32($contents);

$contents = gzcompress($contents, 9);

$contents = substr($contents, 0, strlen($contents) - 4);

echo $contents;

gzip_PrintFourChars($Crc);
gzip_PrintFourChars($Size);


function gzip_PrintFourChars($Val) {
	for ($i = 0; $i < 4; $i ++) {
		echo chr($Val % 256);
		$Val = floor($Val / 256);
		}
	}
?>
так вот, на локалхосте работать это отказывается, выдаёт пустую страницу. выложил на сервер - выводит дословно вот это
x1fx8bx08x00x00x00x00x00xЪуTПUHОП-(J-.NMQ"щiќ
подскажите в чём дело?

-~{}~ 26.04.05 17:11:

http://webmastak.com/develop/php/73/ - вот адрес статьи
 

Moby

Guest
ничего прикольного... вывод то кешируется:
ob_start();
ob_implicit_flush(0);

print("I'm compressed!n");
$contents = ob_get_contents();
ob_end_clean();

в результате ничего не выводит! а вот если дописать строчку
echo $contents;
тада выведет, в общем проблема не из-за этого.

-~{}~ 26.04.05 17:27:

перечитал ещё раз статью... возможно у меня просто php без gzip модуля, ладно, это обьясняет почему у меня на локалхосте не работает... дальше, в статье написано на проверять поддерживает ли _браузер_ сжатие данных... смотрю результат phpinfo у себя на локал хосте - поддерживает, этим же браузером смотрю phpinfo() в скрипте но у же на сервере - этого параметра ACCEPT_ENCODING - нету... почему?
 

MiRacLe

просто Чудо
прокси режут заголовки, в частности ISA2000 и 2004 режет Accept-encoding
 
Сверху