Сжатие PHP-кода

И всё прочее, что касается HTML
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
kozak
сержант
Сообщения: 240
Зарегистрирован: 2007-07-20 15:22:54
Откуда: Запорізька Січ

Сжатие PHP-кода

Непрочитанное сообщение kozak » 2007-07-22 21:37:05

На сайте http://www.lissyara.su в нижней части страницы есть небольшая информация о сжатии страницы.

Код: Выделить всё

Исходный размер: 21033; Сжатая: 5938
Как не пробовал такое сделать Zend'oм, или не получалось вовсе - выдавало "аброкадабру" или наоборот,
после "сжатия" показывало размер больший оригинального=(

Вобщем, забросил я это дело, на каждый раз когда загожу к lissyare не могу успокоиться!!!

Lissyara, плиз брось в меня работающим примерчиком=)

Gracias.
Діла добрих оновляться, Діла злих згинуть. Т. Г. Шевченко.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Сэатие PHP-кода

Непрочитанное сообщение Alex Keda » 2007-07-22 21:54:22

сделано на основании этого:

Код: Выделить всё

<?php
/*
** Title.........: PHP4 HTTP Compression Speeds up the Web 
** Version.......: 1.20 
** Author........: catoc <catoc@163.net> 
** Filename......: gzdoc.php 
** Last changed..: 18/10/2000 
** Requirments...: PHP4 >= 4.0.1 
** PHP was configured with --with-zlib[=DIR] 
** Notes.........: Dynamic Content Acceleration compresses 
** the data transmission data on the fly 
** code by sun jin hu (catoc) <catoc@163.net> 
** Most newer browsers since 1998/1999 have 
** been equipped to support the HTTP 1.1 
** standard known as "content-encoding." 
** Essentially the browser indicates to the 
** server that it can accept "content encoding" 
** and if the server is capable it will then 
** compress the data and transmit it. The 
** browser decompresses it and then renders 
** the page. 
** 
** Modified by John Lim (jlim@natsoft.com.my) 
** based on ideas by Sandy McArthur, Jr 
** Usage........: 
** No space before the beginning of the first '<?' tag. 
** ------------Start of file---------- 
** |<? 
** | include('gzdoc.php'); 
** |?> 
** |<HTML> 
** |... the page ... 
** |</HTML> 
** |<? 
** | gzdocout(); 
** |?> 
** -------------End of file----------- 
** Отрихтован мною, lissyara, 8 мая 2005 года,
** была исправлена некорректная работа функции
** CheckCanGzip()
*/ 
ob_start();
ob_implicit_flush(0);
function CheckCanGzip(){
if (headers_sent() || connection_aborted()){
return 0; 
}
if (strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip') !== false) return "x-gzip"; 
if (strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false) return "gzip"; 
return 0; 
}
/* $level = СПНБЕМЭ ЯФЮРХЪ 0-9, 0=МЕРС, 9=ЛЮЙЯХЛСЛ */
function GzDocOut($level=5, $debug=0){
$ENCODING = CheckCanGzip();
if ($ENCODING){
$Contents = ob_get_contents();
ob_end_clean();
if ($debug){
$s = "<center>мЕЯФЮРЮЪ: ".strlen($Contents)."; ";
$s .= "яФЮРЮЪ: ".
strlen(gzcompress($Contents, $level)).
"</center>";
$Contents .= $s;
}
header("Content-Encoding: $ENCODING");
print "\x1f\x8b\x08\x00\x00\x00\x00\x00";
$Size = strlen($Contents);
$Crc = crc32($Contents);
$Contents = gzcompress($Contents, $level);
$Contents = substr($Contents, 0, strlen($Contents) - 4);
print $Contents;
print pack('V', $Crc);
print pack('V', $Size);
exit;
}else{
ob_end_flush();
if ($debug){
echo "<br><CENTER>яРПЮМХЖЮ МЕ АШКЮ ЯФЮРЮ</CENTER>";
}
exit;
}
} 
?>
Убей их всех! Бог потом рассортирует...

Аватара пользователя
kozak
сержант
Сообщения: 240
Зарегистрирован: 2007-07-20 15:22:54
Откуда: Запорізька Січ

Re: Сэатие PHP-кода

Непрочитанное сообщение kozak » 2007-07-22 22:08:14

Спасибочки.
Что там в Win-1251 написано догадаемся=)

UTF-8 RulllllllllS!
Діла добрих оновляться, Діла злих згинуть. Т. Г. Шевченко.

Аватара пользователя
kozak
сержант
Сообщения: 240
Зарегистрирован: 2007-07-20 15:22:54
Откуда: Запорізька Січ

Re: Сжатие PHP-кода

Непрочитанное сообщение kozak » 2007-07-23 18:41:11

Не выходит. Та=же ошибка.

Код: Выделить всё

x?(? Test text. Not compress: 176Compressed length: 187
Что за "x?(? " ?

И почему после сжатия страница больше исходной. Бред.
Діла добрих оновляться, Діла злих згинуть. Т. Г. Шевченко.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Сжатие PHP-кода

Непрочитанное сообщение Alex Keda » 2007-07-23 19:02:11

слишком маленькая.
килобайт хотя бы воткни...
===========
у тя браузер поддерживает сжатие-то?
Убей их всех! Бог потом рассортирует...

Аватара пользователя
kozak
сержант
Сообщения: 240
Зарегистрирован: 2007-07-20 15:22:54
Откуда: Запорізька Січ

Re: Сжатие PHP-кода

Непрочитанное сообщение kozak » 2007-07-23 19:40:47

Когда делаем:

Код: Выделить всё

function GzDocOut($level=Х, $debug=1)
,где Х>0

получаем:

Код: Выделить всё

‹xнТ=ЉAб|NСWњ]05ч:ёЃ8Ю“ Цј:«ѕдЎЗґ~щ:шXJ)‰@_C`0§‰
ађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§
‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”
sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`
0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”
sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`
0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”
sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”sJађHI`0§‰”у4оЇ
Может че с Zend'om?
Діла добрих оновляться, Діла злих згинуть. Т. Г. Шевченко.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Сжатие PHP-кода

Непрочитанное сообщение Alex Keda » 2007-07-23 19:48:24

через пару часов сделаю тестовую страничку, выложу.
посмотрим как оно будет...
щас некогда - дитё уже укладываться собирается :)
Убей их всех! Бог потом рассортирует...

Аватара пользователя
kozak
сержант
Сообщения: 240
Зарегистрирован: 2007-07-20 15:22:54
Откуда: Запорізька Січ

Re: Сжатие PHP-кода

Непрочитанное сообщение kozak » 2007-07-23 20:05:30

плииз....
Діла добрих оновляться, Діла злих згинуть. Т. Г. Шевченко.

Аватара пользователя
kozak
сержант
Сообщения: 240
Зарегистрирован: 2007-07-20 15:22:54
Откуда: Запорізька Січ

Re: Сжатие PHP-кода

Непрочитанное сообщение kozak » 2007-07-23 20:18:03

ХЗ. Вот сейчас выдает такое:

Код: Выделить всё

?x??
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
....
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
Сжатая: 751
Исходная: 740
Діла добрих оновляться, Діла злих згинуть. Т. Г. Шевченко.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Сжатие PHP-кода

Непрочитанное сообщение Alex Keda » 2007-07-24 0:20:06

http://lissyara.su/gzip/
там же лежат сжатые файлы - чтобы мог забрать.
сервер настроен по статье. что последняя на сайте - apache2+php5+mod_fastcgi
Убей их всех! Бог потом рассортирует...