Функционал Joomla предоставляет возможность увеличить скорость загрузки сайта за счет обеспечения кэширования данных на сервере, о настройке которого поговорим в данном материале.
Что такое серверное кэширование
Сайты на CMS Joomla являются динамическими: перед тем, как отобразиться в браузере, веб-страница формируется через взаимодействие PHP-кода с базой данных. Это предполагает огромное множество действий со стороны сервера, скорость выполнения которых может сильно падать, если к сайту одновременно выполняется много запросов (большое количество пользователей в единицу времени), в результате чего время загрузки страниц сайта может сильно возрастать.
Облегчить работу сервера как раз позволяет серверное кэширование: веб-страницы целиком или частично в виде конечного HTML-кода будут сохраняться на сервере в виде временных файлов (кэша) после генерации и отдаваться при запросах пользователями.
Виды кэширования в Joomla 3
CMS Joomla 3+ предусматривает 3 вида кэширования данных на сервере:
- стандартный уровень
- прогрессивный уровень
- кэширование страниц
Теперь о каждом по порядку.
Стандартный уровень кэширования
Обеспечивает создание файлов кэша для всех элементов веб-страниц, в том числе модулей, в настройках которых не отключено кэширование. Подойдёт для любого сайта.
Прогрессивный уровень кэширования
Аналогично стандартному, за исключением того, что все модули будут кэшироваться в один файл, независимо от их индивидуальных настроек. Такой вариант не подходит для сайтов с динамическими модулями, контент которых может меняться в зависимости от действий пользователей (например, модуль виртуальной корзины).
Кэширование страниц
Такой вариант предполагает сохранение конечных копий веб-страниц целиком, в том числе компонентов. Этот тип кэширования самый эффективный в отношении скорости загрузки и подойдёт для большинства лэндингов, но не для сайтов с постоянно обновляющимся контетом.
Настройка кэширования в Joomla 3
Поговорим о том, как активировать и настроить серверное кэширование.
Настройка стандартного или прогрессивного кэширования
- Система → Общие настройки
- Вкладка Система
- Раздел Настройки кэша
- Обработчик кэширования
Если на сервере активированы прекомпиляторы для обработки кэша, они будут в выпадающем списке. Если выбор отсутствует или вызывает затруднение, выберите значение Файл. - Путь к каталогу кэша
Если не заполнять, то все временные файлы будут храниться в папке /cache/ - Время кэширования
Подразумевает время хранения временных файлов в минутах. Рекомендуем выставлять значение, равное приблизительной частоте обновления контента на сайте, но не более 1440 минут (одних суток) во избежание каких бы то ни было проблем. - Специфическое кэширование для платформы
Следует активировать, когда код веб-страниц отличается в зависимости от устройства вывода (например, для мобильных устройств применяется иная вёрстка). - Системный кэш
Собственно, эта опция и определяет тип кэширования (стандартный или прогрессивный). - По окончанию настройки жмем Сохранить или Сохранить и закрыть
Настройка кэширования страниц
Эта функция активируется посредством системного плагина, при этом в Общих настройках сайта (вкладка Система, раздел Настройки кэша) должно быть указано Время кэширования.
- Расширения → Плагины
- Плагин Система - Кэш
- Состояние Включено
Настройки плагина позволяют активировать кэширование в браузере (не рекомендуется включать, т. к. в таком случае вся страница, в том числе HTML-код, будет храниться в браузере и отображаться независимо от внесенных на сайте изменений), а также исключать кэширование отдельных страниц по пунктам меню и URL-адресам.
Очистка серверного кэша в Joomla 3
При изменениях на страницах сайтах до истечения срока действия файлов кэша потребуется их своевременное удаление. Для этого в Joomla предусмотрена стандартная функция:
- Система → Очистить весь кэш
Для удаления всех временных файлов - Система → Очистить устаревший кэш
Для удаления просроченных файлов кэша.