|
|
|
| Заинтересовался я приблудой для хрома "PageSpeed Insights".
Кто не в курсе - она анализирует страницу и все, что к ней подключается и выдает рекомендации по оптимизации.
Почти все рекомендации, которые не противоречат необходимым требованиям, удалось выполнить, уперся в gzip-сжатие для html, css, js.
Сперва настроил в htaccess. На локале работает.
Проверяю на хостинге - сжатия нет.
Установил еще для контроля похожую приблуду для ФФ (YSlow) - результат тот же.
Установил в ФФ Live HTTP Headers - заголовок "Content-Encoding: gzip" сервером не передается.
Перенастроил в htaccess по другому - результат тот же.
Пошел самым лобовым методом - сжатие в РНР и принудительная передача заголовка Content-Encoding.
И - О ЧУДО!!! Сжатия снова нет!!!!!!!!
Я давай писать в ТП, мол че за фигня?!
А они мне, мол - у нас Apache+nginx и сжатие включено по умолчанию.
Я - А где заголовки?
Они - Не знаем, мол, вот вам сервис (дали урл), проверьте через него.
Проверяю - сервис говорит что сжатие есть.
Я не поверил (хрен его знает что там делает этот сервис и какую ерунду мне пишет) - написал скриптик, через curl проверил с другого хостинга....
И сжатие действительно есть!
Внимание вопрос!....
А в чем прикол? Почему в браузерах все несжатое и хедеры порезаны?
____________________
[UPD] Установил сейчас сниффер fiddler2....
Контент приходит, как он пишет 'encoded'. Но энкодед он не гзипом, а так вот:
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 30 Oct 2012 18:45:18 GMT
Content-Type: text/javascript; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: PHP/5.3.3
Pragma: no-cache
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Expires: Tue, 30 Oct 2012 22:45:18 +0400
Transfer-Encoding: chunked
bc
(function($){$.waitOut = function(){$('body').append('<div id="fon" style="display:none"></div>');
$('#fon').css({'position':'absolute','left':0,'right':0,'top':0,'bottom':0,'width':'100%'
bc
,'height':'100%',
| т.е. chunked
В то время как тесты с онлайн хостов говорят о gzip'е.
У меня только один вывод напрашивается: провайдер (в данном случае мегафон) раскодирует контент для увеличения трафика!
Есть еще варианты? | |
|
|
|
|
|
|
|
для: Sfinks
(30.10.2012 в 22:40)
| | Apache+nginx
А что такое nginx ? | |
|
|
|
|
|
|
|
|
для: coloboc66
(31.10.2012 в 10:55)
| | Это кэширующий Web-сервер, его часто ставят перед Apache, чтобы снизить количество обращений к последнему, а то и вовсе прикручивают к нему PHP (через FastCGI) и используют его в качестве основного Web-сервера. Довольно популярен, по крайней мере вы сейчас будете довольно часто слышать его. | |
|
|
|