Войти

Показать полную графическую версию : Сжатие страниц методом gzip


benya
27-04-2006, 17:54
Господа, предлагаю обсудить вопрос сжатия страниц, а так же связанным с этим проблемами совместимостью броузеров итд.
Меня интересует один вопрос : не повлияют ли страницы в сжатом виде gzip на индексацию поисковыми машинами??

P.S. Грузил ради интереса сайт Телепортом 1.40 - загнулся сразу, так как не умеет распаковывать страницы...

XCodeR
27-04-2006, 20:23
с "умными" поисковиками проблем, думаю, возникнуть не должно....

benya
27-04-2006, 21:09
Кстати, откопал интересное условие. Браузер посылает серверу некий заголовок.


if(($ENV{HTTP_ACCEPT_ENCODING} || '') =~ /gzip/){
...
}

Проверяем поддерживает ли браузер сжатие: да - сжимаем, нет - не сжимаем. И телепорт про правильно теперь запустился.

Vlad Drakula
27-04-2006, 23:58
benya
ну вот!!!

vadimiron
28-04-2006, 19:06
benya
конечно надо сначало проверять, поддерживает ли клиент это вообще :)

benya
28-04-2006, 22:23
vadimiron,
А проверять заголовок ACCEPT_ENCODING это не оно? ;)

Sham
30-04-2006, 01:04
benya этот заголовок на gzip автоматом проверяется (в доке по PHP так написано).

Vlad Drakula
30-04-2006, 12:54
Sham
да, если использовать строенный в сервер арихиватор...
а если отдавать самому то и проверять самому нужно....

E-mail
30-04-2006, 15:07
если сервер не поддерживает сжатие а именно не установлен модуль deflate (под апач), то смысла отвечать на заголовк accept-encoding: gzip заголовком content-encoding: gzip нету, так как сервер не сможет зашифровать страницу не имея алгоритма шифрования - я так себе это вижу. и контент всеравно будет онятся в незашифрованном виде (не сжатый)

E-mail
30-04-2006, 15:18
Sham автоматом ничего не бывает, даже автоматичеки шлакбаумы не открываются:)

benya
30-04-2006, 18:07
Ну так модули mod_deflate и mod_gzip нужно допроситься что бы установили. Я подумал можно обойти другим путем - например модулем Compress::Zlib который вроде по умолчанию вроде есть. Собрали Html в переменную. Зашифровали, добавили один заголовок и отдали. Изменения исходника крохотные. А вот прибавка в скорости загрузки мне кажется ощутимая ;)

Sham
30-04-2006, 23:26
Vlad Drakula
Я имел ввиду, если zlib.output_compression = on в php.ini Если значение равно "On" в php.ini или в настройках Apache, страницы будут сжиматься если обозреватель посылает заголовок "Accept-Encoding: gzip" или "deflate". При этом в вывод будут добавлены заголовки "Content-Encoding: gzip" (соответственно "deflate") и "Vary: Accept-Encoding".

E-mail
01-05-2006, 01:53
Sham настройка php.ini + модуль апача + http 1.1

а что будете делать с протоколом http 1.0 ? :)

Sham
03-05-2006, 02:35
E-mail а что будете делать с протоколом http 1.0 ? Выкинем на помойку истории :)
Вообще, в оффдоке PHP ничего об этом не сказано, если не ошибаюсь... Если не трудно, поясните пожалста, или ссылочку...
Кстати, при использовании сабжа заметил неприятную вещь: ID сессии передается только с куками. Если куки не работают, то сессии летят (ссылки не содержат ID сессии)... без сабжа все нормально... может это только у меня?




© OSzone.net 2001-2012