Очистка кэша

Кэш в CS-Cart практически ничем не отличается от кэша в любом другом приложении и работает по схожему принципу.

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

Очистка кэша полезна в двух случаях:

  • кэш устарел, и сохраненные файлы не соответствуют файлам на веб-сервере;
  • кэш занимает слишком много места на жестком диске.

Чтобы очистить кэш, перейдите в Панель администратора, нажмите Настройки → Очистить кэш:

При этом удаляется содержимое следующих папок:

  • var/cache/misc — кэш статики (css/js) и других данных, которые нужно кэшировать;
  • var/cache/registry — кэш объекта Registry: (конфигурационные данные, часто используемые значения, настройки модулей и т.д.);
  • очистится таблица cscart_cache_handlers — связи между зарегистрированными записями кэша и таблицы, от которых они зависят;
  • начиная с версии 4.18.4 — var/cache/templates — кэш шаблонов.

Выборочная очистка кэша

Вы можете чистить отдельные части кэша (а не весь кэш целиком), передавая следующие параметры в URL к скрипту панели администратора:

  • ct — для очистки иконок;
  • cc — для очистки кэша; при этом удаляются следующие файлы:
    • содержимое папки var/cache/misc;
    • содержимое папки var/cache/registry;
    • таблица cscart_cache_handlers;
  • ctpl — для очистки кэша шаблонов; будет удалено содержимое папки var/cache/templates.

Все перечисленные параметры можно комбинировать и/или использовать все параметры сразу.

Очистка кэша вручную

Чтобы очистить кэш вручную, удалите директорию var/cache вашего магазина.

Подсказка

Если удаление этой директории занимает много времени, вы можете переименовать ее, а удалить позже, при наличии свободных ресурсов. Результат будет аналогичным тому, как если бы вы удалили эту папку.

В CS-Cart кэш хранится не только в файлах: имеются такие варианты хранения кэша, как file, sqlite, database, redis, xcache, apc, apcu. Соответствующие параметры задаются в файле config.local.php:

$config['cache_backend'] = 'file'

Таким образом, при очистке кэша в папке var/cache/registry конфигурационные данные, часто используемые значения, настройки модулей будут удалены в том случае, если в приведенном выше файле указан параметр file. В других случаях кэш очищается в том хранилище, которое используется для кэша в текущий момент.

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