Кэширование в Joomla. Как управлять кэшем Joomla

 

Вступление

Cache joomla 640x320

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

По умолчанию Кэширование в Joomla отключено и не используется.

Три вида кэширования

Устройство Joomla может обеспечить три вида кэширования.

  • Кэширование модулей;
  • Кэширование представлений;
  • Кэширование страниц.

Каждый вид кэширования имеет свои особенности в активации, настройках и работе. Рассмотрим эти особенности подробнее.

Кэширование модулей

Кэширование модулей это запоминание Joomla мест расположения модулей сайта. При генерации шаблона, Joomla пользуется сохраненным кэшем модулей, и страница формируется быстрее. Работает кэш модулей для гостей и зарегистрированных пользователей.

Управление кэшированием модулей

Управляется кэш модулей из группы параметров Общие настройки.

Общие настройки ->Система -> Настройка кэша.

nastroyka cache joomla

Cache joomla

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

Общие настройки кэша можно отменить локальными настройками модулей.

cache joomla modul

Cache-joomla-4

Более того, некоторые модули рекомендуется не кэшировать. Об этом читайте в описаниях модулей. Например, не нужно кэшировать модуль «Баннер», так как он постоянно меняется, а при его кэшировании картинка баннера «зависнет». Также стоит отметить, что модули, использующие JavaScript «не боятся» кэширования.

Время кэширования модулей по - умолчанию составляет 15 минут. Это означает, что каждые 15 минут независимо было ли обращение к сайту или нет, модули будут кэшироваться. Это нормально для часто обновляемого сайта, но совсем лишнее для сайта с редким обновлением. Если у вас часто обновляемые модули, то выставите маленькое время кэширования, буквально несколько минут.

Кэширование представлений

Кэширование представлений, это кэширование видов компонента. Кэширование представлений сохраняет копию содержимого, которое генерирует компонент. Копия сохраняется перед передачей содержимого в шаблон, поэтому и называется кэширование представлений. Основывается кэширование представлений на URL страниц формируемых компонентом.

Управляется кэш представлений, вместе с кэшем модулей в Общих настройках. Общие настройки ->Система -> Настройка кэша.

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

Компоненты Joomla установленные по умолчанию, кэшируются только для гостей сайта.

Кэширование страниц

Кэширование страниц предполагает запоминание (создание копии) всей страницы во время ее первого показа. По умолчанию кэширование страниц отключено. Работает кэширование страниц только для гостей сайта.

Настройки кэширования страниц

Активируется кэширование страниц включением системного плагина «Система – кэш», ID 424. После включения плагина в папке cache в корне сайта, создается папка page , где и хранятся копии всех страниц сайта под такими вот именами (пример): 0419e8aa9d0eba4024b97e0b809436b5-cache-page-fbc453f8be4f958e0018ca25b2f254c9. php.

Работает кэширование страниц следующим образом. После запоминания страницы, в случае обращения гостя к ее URL , страница будет вызвана не из базы данных, а из папки cache/page.

Настройки плагина кэширования страниц

cache joomla plugin scrin

Cache-joomla-1

Плагин «Система – кэш» имеет один параметр настройки: Использовать кэширование в браузере: «Да» или «Нет». Смысл этой настройки в следующем. Если включить использовать кэш браузера, то при вызове кэшированной страницы Joomla отправит браузеру HTTP-заголовок "304 Not Modified" , что означает, что страница не была изменена с момента последнего просмотра страницы. Страницу покажут из локального кэша браузера.

Что нужно знать о кэшировании страниц

Эта информация относится к кэшированию страниц, а не модулей и представлений.

  • Кэширование не работает для форм;
  • Кэширование применяется только для не вошедших пользователей (гостей);
  • Если включено кэширование, то показатель «хиты» для страницы перестает работать;
  • Кеш работает для любого уникального URL , после первого показа страницы;
  • Динамическое содержание сайта, основанное на JavaScript, будет работать при включении кэширования страниц. То есть, кеш на рекламу не влияет. Например, AdSense, AdWords;
  • Важно! Плагин кэширования страниц «Система – кэш» должен располагаться после плагина System-SEF, а также других SEF плагинов установленных на сайт. Это нужно для того, чтобы сохранялись уже преобразованные ссылки;
  • Кэширование не работает, если включена «Отладка системы» в «Общих настройках».

Обращу ваше внимание на предпоследнее правило, о порядке расположения плагинов. На днях я несколько часов "боролся" с компонентом Sh404, забыв именно о порядке расположения КЭШ плагина. Включил плагин Система - КЭШ, а он был выше SEF плагинов. После изменения их расположения все исправилось.

SEF Cashe 1

SEF Cashe-2

Очистка кэшированных страниц

Если требуется очистка кэшированных страниц, а это нужно после редактирования страниц, нужно воспользоваться вкладкой «Очистка кэша» в меню Сайт ->Обслуживание.

cache joomla clean

очистка кеша сайта Joomla - cache joomla clean

Cache-joomla-3

Это все о Кэширование в Joomla. В завершении отмечу, что кэширование в Joomla функция очень полезная, но и очень конфликтная и требует повышеного внимания. Особенно плагин Система-Кэш.

©Joomla-abc.ru

Другие статьи раздела: Администрирование Joomal 2.5

Администрирование Joomla 3.x