Ошибка кеширования в плагине WP Super Cache 1.6.2

В популярном плагине кеширования WP Super Cache после обновления с 1.6.1 до 1.6.2 перестало работать кеширование, а именно WP стал отдавать при каждом запросе страницу с новой меткой времени вместо кешированный страницы с одной и той же меткой времени. Встроенная проверка кеширования (находится в настройках плагина) так и показывает, что метки времени не совпадают:

WP Super Cache 1.6.2 - Проверка кеширования - Страницы не совпадают

Также можно проверить кеширование, не заходя в настройки, а просто посмотрев метки в конце исходного кода страницы.

Поиск причины ошибки кеширования

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

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

После того, как поменял значение Таймаут кеширования на ненулевое, а именно, 604800 секунд (неделя):

Параметр Таймаут кеширования в WP SUper Cache

кеширование сразу стало работать как ожидается – плагин стал отдавать именно кешированные страницы с одной и той же меткой времени.

WP Super Cache 1.6.2 - Проверка кеширования - Временные штампы совпадают

Выводы

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

Надеюсь, в следующей версии автор плагина исправит эту ошибку.

UPD. Новая версия

На днях вышло обновление плагина WP Super Cache 1.6.3, где эта проблема исправлена:

Really disable garbage collection when timeout = 0 (#571)

Журнал изменений

Попробуем…

Проблема с плагином WP Super Cache 1.6.2 и её решение
Метки:

2 мыслей о “Проблема с плагином WP Super Cache 1.6.2 и её решение

  • 30.04.2020 в 13:47
    Постоянная ссылка

    Спасибо! Очень помогли! После того, как установил в WP Super Cache время кеширования 604800 сразу плагин стал корректно кешировать. А то всё 0 да 0 показывал в кеше…

    Ответ
    • 02.05.2020 в 16:11
      Постоянная ссылка

      Спасибо за обратную связь, так а вроде в исправленной версии плагин должен корректно кешировать и при нулевом значении?

      Ответ

Добавить комментарий для nhutils Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *