Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Gzip+xHTML - возможно?

Сообщения:  [1-10]   [11-17] 

 
 автор: Gemorroj   (16.11.2007 в 20:44)   письмо автору
 
   для: amigo62   (16.11.2007 в 20:32)
 

у меня все наоборот получилось =) deflate сильнее всех жмет, gzip средне, а x-gzip еще хуже
в методах компрессии не силен, прокомментировать грамотно не смогу.

   
 
 автор: amigo62   (16.11.2007 в 20:32)   письмо автору
 
   для: Gemorroj   (11.11.2007 в 20:40)
 

x-gzip жмет сильнее...

   
 
 автор: Gemorroj   (11.11.2007 в 20:40)   письмо автору
 
   для: amigo62   (11.11.2007 в 19:51)
 

Откуда такое мнение?

   
 
 автор: amigo62   (11.11.2007 в 19:51)   письмо автору
 
   для: amigo62   (10.11.2007 в 19:16)
 

Насколько я понимаю, deflate- самый примитивный метод, а x-gzip- самый продвинутый? Перевернул иерархию, см. аттач

   
 
 автор: amigo62   (10.11.2007 в 19:16)   письмо автору
 
   для: Gemorroj   (10.11.2007 в 16:59)
 

Всё, врубился как подогнать под скрипт=) Еще раз мерси=)

   
 
 автор: amigo62   (10.11.2007 в 19:07)   письмо автору
 
   для: Gemorroj   (10.11.2007 в 16:59)
 

Спасибо, век не забуду=) правда, в самом начале файла вылезает
IN: 0 байт<br />
OUT: 2 байт<br />
Сжатие: 100 %<br />
Метод: deflate<br />
Поддерживаемые методы компрессии: deflate, gzip, x-gzip, identity, *;q=0
но думаю, дальше сам разберусь)

   
 
 автор: Gemorroj   (10.11.2007 в 16:59)   письмо автору
 
   для: amigo62   (10.11.2007 в 15:54)
 

Вот

   
 
 автор: amigo62   (10.11.2007 в 15:54)   письмо автору
 
   для: Gemorroj   (10.11.2007 в 14:08)
 

Спасибо большое! Теперь всё нормально! А как теперь вставить в страницу запись типа: "Gz: on 43%" (т.е. обозначить в тексте метод и степень сжатия)?

   
 
 автор: Gemorroj   (10.11.2007 в 14:08)   письмо автору
 
   для: amigo62   (10.11.2007 в 10:13)
 


<?php
if(@$_SERVER['HTTP_ACCEPT_ENCODING'])
{
$compress strtolower(@$_SERVER['HTTP_ACCEPT_ENCODING']);}
else
{
$compress strtolower(@$_SERVER['HTTP_TE']);}

if(
substr_count($compress,'deflate'))
{
function 
compress_output_deflate($output)
{return 
gzdeflate($output,4);}

header('Content-Encoding: deflate');
ob_start('compress_output_deflate');
ob_implicit_flush(0);
}
elseif(
substr_count($compress,'gzip'))
{
function 
compress_output_gzip($output)
{return 
gzencode($output,4);}

header('Content-Encoding: gzip');
ob_start('compress_output_gzip');
ob_implicit_flush(0);
}
elseif(
substr_count($compress,'x-gzip'))
{
function 
compress_output_x_gzip($output)
{
$x "\x1f\x8b\x08\x00\x00\x00\x00\x00";
$size strlen($output);
$crc crc32($output);
$output gzcompress($output,4);
$output substr($output0strlen($output) - 4);
$x.= $output;
$x.= pack('V',$crc);
$x.= pack('V',$size);
return 
$x;
}

header('Content-Encoding: x-gzip');
ob_start('compress_output_x_gzip');
ob_implicit_flush(0);
}
?>


Это файл gzip.php всавляю его повсюду.
Есть этот скрипт с ридми на сайте, но сайт к сожалению временно не работает =(
Здесь цифра 4 (gzdeflate($output,4) и др.) это метод компрессии, от него зависит степень компессии. Возможные значения от 0 (не сжимает) до 9 (сжимает максимально). Но выше 4 ставить не стоит, выигрыш в степени компрессии минимален, а вот ресурсов сервера расходуется куда больше.
Так же лучше всего показала себя иерархия вида - deflate, gzip, x-gzip. Хотя пока не встречал браузера который бы поддерживал x-gzip и не поддерживал deflate или gzip.

   
 
 автор: amigo62   (10.11.2007 в 10:13)   письмо автору
 
   для: Gemorroj   (09.11.2007 в 21:31)
 

Совершенно верно! А у Вас имеется рабочий пример кода на эту тему? У меня такое впечатление, что мой ничего не сжимает. Написал бы сам, но не до конца разобрался ещё с буферизацией, а надо очень срочно... Выручите?=)

   

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования