кеширование на Joomla с Jotcache

Кеширование на CMS Joomla может выполняться с помощью стандартных инструментов и плагинов, второй вариант более гибкий и сегодня я расскажу, как настроить кеширование на Joomla с плагином JotCache.

Ничего заумного, всё настроить можно самим, что даст результат здесь и сейчас, а весна придёт сама по себе. Что будем иметь на выходе? Ускорение загрузки страниц, за что большое спасибо скажут пользователи с не самым быстрым интернетом. 

Преимущества и недостатки кеширования

Небольшой экскурс. При работе CMS страницы формируются динамически при каждом запросе к ним со стороны пользователя. При небольшой (средней) посещаемости сайта проблем не возникает, но с ростом трафика растёт и нагрузка на сервер. Это требует перехода на более дорогой тариф, плюс могут возникать проблемы со скоростью загрузки страниц, что ни есть хорошо для ауры сайта.

Стандартное кеширование Joomla топорно и не подходит для сайтов с магазинами VirtueMart, да и обычные, часто обновляемые, блоги могут найти себе эксклюзивную болезнь под названием геморрой. Стандартный кеш – это создание статических страниц в кеше, после чего web-документы не формируются при каждом запросе, а предлагаются пользователю уже в готовом, статическом виде, но вся динамика (корзина, комментарии, отзывы, крошки и пр.) летит к чертям собачьим. В идеале нам надо кешировать то, что статично и не трогать то, что обновляется. Поможет в этом плагин JotCache, который имеет достаточно гибкие настройки.

Настройка JotCache

Установка стандартна, но надо ставить два компонента com_jotcache и plg_system_jotcache для Jommla 1.5, для версий выше ставится один плагин: расширения – установить, для настройки переходим в плагины – JotCache. Нас интересуют настройки в правой части панели, во вкладке «параметры плагина».

  1. - Использовать кеш браузера – ставим «да»,
  2. - Время кеширования  (жизнь кеша) – удобный интервал, я ставлю 300-1000,
  3. - Сжать сохранённые данные – «да», если с нагрузкой на сервер нет проблем, если же её надо снизить, то «нет»,
  4. - Специальное кеширование – «нет»,
  5. - Автоматическая очистка – 300-3000 (я ставлю, или не ставлю, если объём кеша не огромен).

Также есть пункт «лог очистки» он бестолков по сути – «нет» и «поддержка браузеров» – тут можно выделить все (указаны только те, которые не поддерживаются автоматом, Opera, Google и пр. работают и так). Есть ещё и «глобальные исключения», но их пока не трогаем. Делаем плагин в админке последним системным для корректной работы (порядок – последний) и сохраняем.

Динамическое кеширование Joomla

динамическое кеширование Joomla

Исключить страницы магазина с динамическим содержанием часто тоже надо (корзина, страница оформления заказа и пр.). Для этого переходите после настроек по пути компоненты – JotCache – исключить. Там всё интуитивно понятно, выбираете по имени компонента или опциям, ставите галочку и нажимаете с чистым сердцем «применить». Скажу сразу, что в исключениях надо отметить Xmap, Search, JComments и VirtueMart, прописав в параметрах последнего cart, checkout. Здесь общих правил мало – изучите, что вам не надо кешировать, то и исключайте.

Теперь включаем кеширование самой Joomla в адмике (если было включено, то очищаем кеш), а плагин «Система – Кэш» выключаем и радуемся скорости загрузки страниц.

Осталась одна неприятная проблема – кеширование мини-корзины, так как сама корзина у нас не кешируется (добавлена в исключения), а её сквозной мини-собрат по-прежнему статичен. Для этого надо сделать исключение. Смотрим, в какой позиции расположен динамичный модуль и оборачиваем её кодом

Например,

<!-- jot left s style="rounded" -->

<jdoc:include type="modules" name="left" style="rounded" />

<!-- jot left e -->

Этот код вставляете в файл index.php, зайдя на хостинг через ftp. Важно сделать идентичными стили, в данном случае в первой и второй строках должно быть rounded, так как он был изначально в позиции вывода модуля в коде.

Теперь кешируется в Joomla и VirtueMart то, что надо и нет проблем с динамичными страницами, скоростью загрузки web-документов и нагрузкой на сервер. Скачать версии плагина для Joomla 1.5 и выше.