Ожидается сжатый контент - PullRequest
       12

Ожидается сжатый контент

0 голосов
/ 02 августа 2009

Я включил сжатие gzip на своем веб-сайте и протестировал следующие инструменты:

Хотя Firefox и все его расширения (Firebug, Yslow и Google Page Speed) говорят, что они получают несжатый контент.

text / html сжимается в php ob_gzhandler, который также заботится о заголовках.

Я не использую прокси.

Что я делаю не так?

Ответы [ 4 ]

2 голосов
/ 02 августа 2009

Это не совсем тот ответ, который вы могли ожидать, но вы пытались не сжимать данные с помощью PHP, а с помощью Apache?

Это можно сделать, используя mod_deflate.

Пара вещей:

  • это будет означать меньше вычислений для PHP
  • это также будет означать (и это самая приятная часть ; -) ) , в которую могут быть сжаты ваши файлы CSS / JS; учитывая их размер, в настоящее время может быть неплохо сжать их ...


В качестве пояснения: чтобы помочь нам понять, что происходит с компрессией PHP, не могли бы вы дать больше информации? Например, URL вашего сайта (если он общедоступный) , и какой-нибудь код?


ИЗМЕНИТЬ теперь, когда у нас есть URL : http://ego.pestaa.hu/

Когда я перехожу на эту страницу, заголовки ответа выглядят следующим образом:

HTTP/1.x 200 OK
Date: Sat, 01 Aug 2009 21:53:37 GMT
Server: Apache
X-Powered-By: PHP/5.2.6
**Content-Encoding: gzip**
Vary: Accept-Encoding
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html

(с использованием Firefox 3.5 с расширением LiveHTTPHeaders)

На трех указанных вами сайтах тестирования также сообщается, что ваша страница взломана.
Вы нашли, в чем проблема?

Вы уверены, что это не что-то из вашего браузера, которое не отправило бы следующий заголовок в запросе:

Accept-Encoding: gzip,deflate

РЕДАКТИРОВАТЬ после другого ответа

Цитата из комментариев:

источник проблемы, вероятно, не мой сайт, но мой ISP / браузер / маршрутизатор. Один из них может распаковать каждый компонент, прежде чем он достигнет внутреннего процессы.

О, если проблема не в вашем веб-сайте, я думаю, что я полностью неправильно понял вопрос - извините за это :-( Я подумал, что вы не знаете, как сервировать сжатый контент с вашего сайта.
И я думаю, что я не единственный, кстати

Если проблема не имеет ничего общего с конфигурацией вашего сайта, то есть две возможности:

  • может быть неправильная конфигурация firefox? Если вы перейдете на about:config, что скажет network.http.accept-encoding? Для меня это gzip,deflate
  • если проблема исходит от вашего интернет-провайдера или чего-то в этом роде, никто ничего не может сделать ...
1 голос
/ 02 августа 2009

Попробуйте плагин Live Http firefox в дополнение к другим. Он открывает окно, в котором отображаются точные заголовки запроса / ответа по мере их перемещения вперед и назад, поэтому вы без сомнения знаете, что такое кодировка принятия и ответа.

0 голосов
/ 02 августа 2009
  • Вы уверены, что тестируете те же URL-адреса с расширениями Firefox?
    • Использование ob_gzhandler в PHP сожмет вывод ваших php-страниц, но YSlow и другие также предупреждают вас о несжатых файлах CSS / Javascript.
  • Убедитесь, что браузер отправляет правильные заголовки. Браузер обычно отправляет заголовок «Accept-encoding: gzip», чтобы сообщить скрипту / веб-серверу, что он принимает сжатый контент. Сценарии тестирования обязательно отправят это, но ваш браузер может этого не сделать.
0 голосов
/ 02 августа 2009

Вы пробовали просто включить / выключить gzip в Apache / на вашем веб-сервере?

...