Как я могу кэшировать страницы бесконечно?


Я обновляю небольшой сайт в настоящее время на Drupal 6 до Drupal 8, он некоммерческий и не получает такого большого трафика. Это относительно статичный сайт, контент будет добавляться регулярно, но, конечно, не каждый день. Хотя объем трафика легко обрабатывается даже на общем хостинге, я бы хотел, чтобы время загрузки страницы было низким. Я использовал Boost для этого на Drupal 6, но теперь с Drupal 8 я хочу использовать внутренний кэш страниц.

Из того, что я понимаю, Drupal 8 должен иметь возможность автоматически аннулировать кэш при редактировании узлов. Поэтому я хотел бы кэшировать все страницы моего сайта на неопределенный срок, пока данные, стоящие за ними, действительно не изменятся. Но диалоговое окно кэша на странице администратора производительности позволяет использовать кэш страниц не более 1 дня.

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

 1
Author: Mad Scientist, 2015-09-08

1 answers

Настройка на странице производительности, в отличие от D6/7, не вообще не влияет на модуль кэша страниц. Модуль page_cache всегда кэширует на неопределенный срок, вы не можете настроить его иначе. Аннулирование происходит с помощью тегов кэша, как вы сказали.

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

 3
Author: Berdir, 2015-09-10 11:11:32