Мы все хотим, чтобы наши сайты загружались быстро. Проблема в том, что для этого требуется довольно сложная и тонкая настройка различных параметров сайта и сервера, которая по зубам далеко не каждому веб-мастеру. К сожалению, не существует волшебной кнопки, которую можно было бы нажать, получив аналог впрыска закиси азота в двигатель авто, только для сайта. Хотя постойте… Существует! Подробности далее…
Содержание
Joomla Rockstar Extensions
В Joomla, как впрочем, и в других CMS, имеющих большую базу сторонних расширений, существуют просто расширения, а существуют расширения-звезды. Такие, которые не входят в состав базового пакета Joomla, но должны быть практически на каждом сайте. Они имеют максимальные рейтинги в каталогах расширений, множество положительных отзывов, и позволяют добавить сайту какой-то значимый функционал. В список таких расширений для Joomla я бы включил редактор JCE, компонент резервного копирования Akeeba Backup, плагин защиты админки AdminExile и некоторые другие специфические расширения. Сегодня мы поговорим про еще одну звезду из каталога Joomla – плагин JCH Optimize. Но прежде, давайте рассмотрим задачи, в решении которых он нам поможет.
Проблемы оптимизации скорости загрузки страниц
Предположим, вы сделали сайт. Пусть это будет интернет-магазин на Virtuemart. В целом, вы довольны. Всё работает достаточно шустро. С хорошим настроением вы идете на Google PageSpeed, надеясь дополнительно потешить свое самолюбие хорошими показателями скорости загрузки сайта от Google. Запускаете тест. И тут настроение ваше быстро портится:
Google сказал: «Ваш сайт – отстой. Вот вам список технических рекомендаций, которые нужно внедрить, чтобы я полюбил его». Далее идет список из N пунктов, в котором вы, особенно если вы новичок, поймете далеко не всё.
Да, можно разобраться со всеми пунктами, дополнительно прокачать навыки веб-мастера и решить проблемы напильником и отверткой. На самом деле, это будет лучшим вариантом. Однако предположим, что вы не хотите прокачивать навыки, поскольку делали всего один сайт для себя, и не собираетесь становиться профессионалом. Или же, другой вариант. Вы – профессионал, но вы не хотите каждый раз тратить уйму времени на оптимизацию скорости загрузки страниц (а времени, действительно, может уйти много). Как быть в этих случаях?
С одной стороны, можно просто проигнорировать PageSpeed. Вы видите, что сайт загружается вполне себе быстро и вам этого достаточно. Показатели PageSpeed не всегда так важны, как многие думают. Если ваш сайт собирается работать в сфере с высокой конкуренцией, и будет продвигаться SEO-оптимизаторами, то да, должна быть отточена каждая мелочь. Если же у вас просто сайт-визитка и вы не собираетесь ставить его во главу угла своего бизнеса, то зачем вам лишние затраты на ускорение?
Но с другой стороны, предположим, что есть вариант, который позволит вам самостоятельно, бесплатно и в короткий срок, оптимизировать и ускорить сайт. Почему бы им не воспользоваться? JCH Optimize – это как раз такой вариант.
Плагин JCH Optimize
JCH Optimize – это бесплатный плагин для Joomla, от которого веет магией. Нет, серьезно. Вы просто представьте:
- Скачиваем и устанавливаем плагин
- Переходим в настройки плагина, и выбираем уровень оптимизации
- Активируем плагин
Всё. Он работает, исправляя все основные проблемы оптимизации скорости загрузки страниц. Снова измеряем скорость загрузки сайта на PageSpeed, и видим прирост. Фантастика!
Давайте рассмотрим настройки плагина подробнее, и разберемся с тем, что он, собственно, делает, и за счет чего возникает прирост.
Настройка JCH Optimize
Базовые настройки
У плагина есть две версии: базовая и Pro. Возможностей базовой, бесплатной версии, многим хватит. Если же вы хотите получить немного больше, и у вас есть в кармане пара-тройка десятков лишних долларов, то можете приобрести версию Pro. Все настройки Pro-версии отображаются и в базовой, но они выделены серым цветом и недоступны.
Основные настройки базовой версии показаны на рисунке:
Всё, что вам нужно – выбрать уровень оптимизации в опции Автоматическая настройка, и уровень минимизации HTML в опции ниже. Также не забудьте активировать сам плагин. На этом основная настройка окончена.
Какие значения выбрать в настройках? Здесь следует руководствоваться следующим принципом: «Чем выше уровень оптимизации, тем выше вероятность тех или иных проблем в работе сайта». Таким образом, вы можете выставить сначала максимальную оптимизацию. После проверить весь функционал сайта. Если все работает – отлично, так и оставляем. Если нет, снижаем уровни.
Для тех, кто хочет тонко настроить плагин, есть дополнительный блок настроек, из которого и формируются автоматические режимы. Он откроется, если кликнуть по заголовку Параметры автоматической настройки:
За счет чего возникает прирост скорости загрузки страниц сайта?
Что же технически делает JCH Optimize? Из-за чего возникает прирост скорости? Возьмем типичный сайт на Joomla и Virtuemart, откроем исходный HTML-код страницы, и посмотрим, что там у нас загружается. Картина не слишком радужная:
Два десятка файлов скриптов и стилей подгружаются на странице. Каждый из этих файлов важен для работоспособности сайта и магазина, и каждый из них загружается последовательно (т.е. следующий начнет загружаться только тогда, когда загрузится предыдущий), если только вы не перешли на HTTP 2.0. В результате, уже только здесь мы имеем значительную потерю скорости.
Теперь давайте включим JCH Optimize в режим Average, и посмотрим исходный код страницы повторно:
Видно, что все загружаемые файлы были скомпилированы всего в два: файл стилей .CSS и файл скриптов .JS . При этом сами файлы также ужаты. Из них удалены все лишние символы и пробелы.
Пойдем еще дальше и включим максимальный уровень минимизации HTML. Посмотрим исходный код страницы:
Из кода были удалены все лишние символы и пробелы. Сам код занял всего 6 строк. Для человека он стал практически нечитаемым, а браузеры переваривают на ура.
Также JCH Optimize вносит изменения в файл htaccess вашего сайта, активируя дополнительное браузерное кэширование. Правда здесь есть нюанс. Для того чтобы это кэширование работало, на сервере должны быть включены некоторые модули, которые на практике включены далеко не всегда.
Настройки исключения
Иногда бывает необходимо не включать какой-либо файл в компиляцию, а загружать его отдельно. Причины тому могут быть разные. JCH Optimize дает возможность исключить отдельные CSS и JS файлы из компиляции общего файла. Сделать это можно на вкладке Настройки исключения:
Вы просто добавляете необходимые файлы в соответствующих опциях, и они загружаются отдельно.
Параметры
Помимо описанных выше способов оптимизации, в бесплатной версии JCH Optimize есть также генератор спрайтов. Про спрайты я уже когда-то писал. Если данный термин вам неизвестен, можете посмотреть статью по ссылке.
JCH Optimize предлагает автоматический способ создания спрайта из фоновых изображений вашего сайта. Это также может помочь в ускорении загрузки сайта, т.к. фоновые изображения будут загружаться не отдельно, а сразу, будучи объединёнными в одно изображение-спрайт.
JCH Optimize Pro
В платной версии JCH Optimize добавляются такие функции, как:
- Поддержка CDN
- LazyLoad для изображений сайта
- Оптимизация загрузки CSS, при которой наиболее востребованные стили выносятся в шапку сайта
- Оптимизация изображений, в том числе и через сервер разработчиков JCH Optimize
Я не буду подробно останавливаться на возможностях платной версии. На сайте разработчика JCH Optimize вы можете посмотреть сравнительную таблицу функций различных версий. Скажу только, что платные функции достаточно хорошие, и, если вы заинтересованы в том, чтобы выжать максимум скорости из сайта, не углубляясь в сложные технические детали оптимизации, то можете приобрести и платную версию плагина.
Заключение
JCH Optimize меня приятно удивил. Это действительно стоящее расширение для тех, кто хочет легко и быстро увеличить скорость загрузки своего сайта на Joomla. Конечно, JCH Optimize не сможет сравниться с профессиональным программистом, но может являться отличной бесплатной альтернативой.
Но в отношении этого плагина прошу быть очень осторожным.
Например проверка в гугле после установки этого плагина на моем сайте показала понижение на 9 балов для мобильной версии.
Так или иначе, не стоит бездумно устанавливать плагин. Стоит поэкспериментировать с настройками и проверить результат по PageSpeed. Для разных сайтов результат может значительно отличаться.
Спасибо, что поделились вашим опытом установки.
что нужно сделать? какое исключение?
http://pr-cy.ru/speed_test
https://tools.pingdom.com
http://www.webpagetest.org
https://gtmetrix.com
Но по факту:
1) Можно зайти в базу данных сайта через phpmyadmin, найти в таблице расширений плагин и задать в колонке enabled ноль - так вы отключите плагин.
2) Можно зайти в файл configuration.php, который в корне сайта, найти там опцию error_reporting и установить значение maximum - так вы включите отображение ошибок и сможете понять в чем дело.
Да действительно при тестировании страницы сайта в pagespeed скорость по попугаям Google увеличивалась на некоторых страницах чуть не в три раза, но в реальности по чувствам и рецепторам Homo sapiens страницы загружались с паузой полторы, две секунды.
Судя по всему это ситуация с "искусственным интеллектом", что искусственный это видно, а что интеллект... увы. Не знаю, но пока все отключил, так быстрее для человека.
Что бы выявить все нюансы происходящего надо иметь желание для этого и не слабые мягко сказать знания о том с чего и как состоит сайт и сервер и взаимодействие составляющих всех звеньев этой платформы. Да и видя, что по мобильных показателях не дотяну до 90 гугловских попугаев я полностью остыл к этому начинанию. Например главная страница по мобильным данным получила 6 попугаев при включенном плагине 16, ну и куда тут бежать. Думаю надо будет переходить на Joomla 4 где то в сторонке с более современным шаблоном и потом удалять все и разворачивать все заготовленное.
После перехода с cPanel на ISPmanager в плане удобства это ока и мерседес. Где Мерседес это cPanel. Что тут скажешь. Санкции в действии. Хорошо только кому ничего не изменилось. Хотя это наверно не должно на скорость влиять. У меня плохой опыт с 6,7 хостами и к нынешнему моему "дому" у меня претензий относительно моего скромного опыта нет.
"По прежнему используете? На этом сайте он есть?"
Лично у меня этот монстр кратно увеличивает нагрузку на сайт. Отключил и ничего плохого не заметил. При кешировании всех ресурсов браузером, возникает вопрос - нафига он нужен?