Как предотвратить кеширование страницы?

8

Я установил пользовательский URL домашней страницы на example.com/welcome. Пользователь заходит на example.com/ и заходит на эту страницу. Drupal перенаправляет на example.com/welcome

Теперь пользователь нажимает на домашнюю страницу, которая загружает example.com/ из кэша браузера (на котором есть форма входа).

Я думаю, если бы Drupal перезагрузил домашнюю страницу на example.com/ вместо example.com/welcome, у меня не было бы этой проблемы. Как бы я это сделал?

Что еще я мог сделать?

Кстати, анонимные страницы кэшируются лаком.

Уве
источник

Ответы:

10

Первый шаг - посмотреть, сделает ли это http://drupal.org/project/cacheexclude . Если вы на Drupal 6, проверьте эту проблему: http://drupal.org/node/197786#comment-1817644 . Если вы на Drupal 7, посмотрите это: http://groups.drupal.org/node/212103

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

Также взгляните на что-то вроде http://drupal.org/project/globalredirect , чтобы убедиться, что у вас есть один URL для ресурса (например, на первой странице).

mikeytown2
источник
Вы, мужик, как только я установил флажок «Обработчик перенаправления Frontpage» в глобальном перенаправлении, проблема была исправлена. Спасибо!!!
Uwe
12

drupal_page_is_cacheable также может быть использован.

Вызов:

drupal_page_is_cacheable(FALSE);

Должен сделать свое дело.

И для Drupal 8:

Drupal::service('page_cache_kill_switch')->trigger();
Феликс Ева
источник