Ваш пост меня заинтересовал, поэтому я поигрался с mod_pagespeed, я не проводил ни детального тестирования, ни измерений.Мое общее впечатление было равнодушным, выгоды были ничтожны или неопределяемы.Самым большим препятствием на пути к Magento всегда была и остается масса PHP-классов, которые загружаются и создаются экземплярами годами.Magento на самом деле не виновен в плохих практиках, таких как встроенный CSS, поэтому у этого мода мало места.С учетом этих предостережений, вот мой опыт.
Во-первых, Google очень хорошо упаковал mod_pagespeed, они предоставляют как исходные, так и двоичные файлы, но установщик двоичных файлов регистрирует репозитории, поэтому он будет обновляться.Что-то, что я хотел бы, чтобы больше производителей делали как само собой разумеющееся.Наиболее разумные настройки - настройки по умолчанию, поэтому они работают сразу, без каких-либо настроек.
Фильтры
Конфигурация разбита на умеренный список фильтров , который вы должны прочитатьточно увидеть, какие улучшения сделаны.Я выбрал только два параметра - «remove_comments» и «collapse_whitespace», которые существенно изменили размер HTML и ничего не сломали.
extend_cache
- по умолчанию включено.Мне нравится его концепция, и я думаю, что это отличный способ поддерживать версии файлов.Полезно.
outline_css
& outline_javascript
- включено по умолчанию.Не очень актуально.Безвредный.
combine_css
& rewrite_css
- По сути, такой же, как встроенная функция Magento и несколько расширений, включая всегда приветствуемый Fooman Speedster .Вы можете подумать, что это делает его излишним, но мне нравится, так как он переносит выполнение PHP в собственный код, благодаря блочному кэшированию разница может быть незначительной, но для меня этого достаточно.Полезно.
inline_css
& inline_javascript
- дополняется до outline_css
& outline_javascript
и по умолчанию включено.Увеличивает ли размер страницы, чего я не ожидал.Предположительно, чтобы уменьшить количество запросов, но что, если файлы css / js объединяются?Я ожидаю, что это просто удаление контента из кешируемого источника.Не требуется.
collapse_whitespace
& remove_comments
- по умолчанию выключено, но его стоит включить.Делает измеримую разницу в байтах, передаваемых даже после сжатия.Полезно.
combine_heads
- Исправляет проблему, которая, вероятно, никогда не возникнет в этом контексте.Безвредный.
elide_atttributes
- Я не нашел никаких проблем с этим, но только время покажет, на данный момент я предполагаю, что это безвредно.Полезно.
rewrite_javascript
- Это в основном "jsmin", и собственные комментарии Google предупреждают, что это рискованно.Поскольку js minifier, поставляемый с Magento, находится в бета-версии и в прошлом вызывал у меня проблемы, я учел этот совет мудреца и оставил его в покое.Не хотел.
rewrite_images
- Я буду держать это коротким.ПОЛЕЗНО.
insert_img_dimensions
- Что-то еще, с Magento действительно нет проблем, поэтому не нужно исправлять.Но это безвредно и может помочь сделать страницы более плавными.Полезно.
ModPagespeedImgInlineMaxBytes
- Превращает небольшие изображения в данные: содержимое URI.Я не доверяю этому, поскольку есть хитрая проверка версии UA, и вы не можете быть уверены, что прокси-серверы вне вашего контроля не будут обслуживать не те браузеры.Похоже, Google думает, что это «низкий или умеренный» риск, но я не дам ему такой возможности.Не требуется.
remove_quotes
- прерывает проверку w3c для получения нескольких байтов.Теоретически это должно быть безвредно, но я не верю этому.Не хотел.
move_css_to_head
& add_head
- Может расстроить некоторый javascript, но Magento более вынослив, чем тот, и опять же Magento, как правило, не допускает ошибок школьника, подобных этой, которые требуют исправленияБезвредный.
Заключение
Различные переписывания, переупорядочения и исправления мешают разработке.Указанный браузером номер строки не обязательно будет таким же, как в исходном коде.По этой причине я бы никогда не использовал его ни для чего, кроме производственного сервера.
Преимущество для приложения на PHP, такого как Magento, очень мало. Сколько из нас собирается администрировать серверы с миллионами ежедневных посетителей, чтобы заметить экономию средств? Я знаю, что могу получить гораздо большую экономию благодаря старомодному программированию. Кэширование блоков и полных страниц имеет лучший эффект из всех.
Тем не менее, любое улучшение приветствуется, поэтому я буду рассматривать его в будущем. Любые другие сайты, размещенные на том же сервере, получат свои преимущества.
Точная конфигурация будет оцениваться в каждом конкретном случае, но в целом я думаю, что буду делать следующее:
В доступных модах / pagespeed.conf:
ModPagespeedDisableFilters inline_css, inline_javascript, rewrite_javascript, remove_quotes
ModPagespeedEnableFilters collapse_whitespace, remove_comments
- Установите Fooman Speedster, чтобы правильно объединить JavaScript.
- Предупредить клиента / плательщика о бета-версии мода.