GZip с мобильными браузерами - PullRequest
7 голосов
/ 08 июля 2010

Я нацеливаюсь на пару веб-проектов для мобильных пользователей и заметил, что некоторые стандартные инструменты (библиотеки JS, JSON-переводы, XML и т. Д.) Довольно тяжелы для мобильных тарифных планов.

Я бы хотел иметь возможность реализовать ресурсы gzip'd и, возможно, mod_deflate / mod_gzip, чтобы попытаться уменьшить количество пропускной способности, используемой этими устройствами.

Однако я не знаю, насколько широко распространена поддержка gzipped javascript, gzipped html и т. Д. На мобильных устройствах, или даже если это обычная практика ...? Это, кажется, имеет смысл.

Можно ли использовать его в качестве надежного инструмента для обычных мобильных устройств? iPhone, Android, BlackBerry, Windows Mobile / опера ..?

Спасибо.

Ответы [ 4 ]

7 голосов
/ 08 июля 2010

Я не думаю, что это имеет значение, браузер будет запрашивать данные GZipped, если он их поддерживает, поэтому ваш сервер будет только GZip их запрашивать, если ваш браузер запрашивает их.

3 голосов
/ 08 июля 2010

Насколько я знаю, большинство из них поддерживает его, но если вы хорошо настроите свой сервер, он сможет отправлять несжатых ресурсов, если это необходимо .

Еще одно преимуществов том, что вы улучшаете кэширование , поскольку некоторые устройства, такие как iPhone, имеют ограничения в 25 КБ для кэшируемого содержимого.

Итак, краткий ответ: Just Do It

2 голосов
/ 08 июля 2010

Пойдите - версия gzipped должна быть отправлена, только если браузер отправляет Accept-Encoding: gzip (и модули проверяют это автоматически). (см. соответствующую часть RFC 2616 )

(применяется обычное предупреждение - некоторые браузеры не работают. Например, IE6 объявляет о возможности gzip, но на самом деле не поддерживает ее должным образом. Для мобильных браузеров я еще не сталкивался с таким нарушением - пока что каждый мобильный браузер, который рекламируемый gzip это поддерживает)

2 голосов
/ 08 июля 2010

mod_deflate / mod_gzip проверит клиентские заголовки "accept" и соответственно включит или выключит сжатие.

Просто включите его на своем сервере и убедитесь, что ваши js и css ресурсы также сжаты. Вы можете использовать вкладку «Net» Firebug, чтобы проверить, было ли сжатие применено к загруженным ресурсам.

Если сжатие замедляется для определенных типов файлов, проверьте этот вопрос о том, как его включить.

...