Есть страница с PHP форматом содержимого:
<?php
readfile('http://localhost:20202/');
?>
Программа отдаёт собственно содержимое страницы.
Друпал его кэширует для анонимных пользователей в соответствии со своими настройками.
Вопрос: как отменить кэширование отдельной страницы, или всех страниц с форматом PHP?
Комментарии
Попробовал добавить в settings.php:
if ($_SERVER['REMOTE_ADDR'] === '127.0.0.1') $conf['cache'] = FALSE;
не помогло.
if ($_SERVER['REMOTE_ADDR'] === '127.0.0.1') $GLOBALS['conf']['cache'] = FALSE
тоже не помогает.
Блин. Понял что я бред мутил.
Разбирающиеся в друпале, — помогите пожалуйста.
А друпал какой? Это вы сейчас для 6-ки.
Для 7: https://api.drupal.org/api/drupal/includes%21bootstrap.inc/function/drup...
аргумент - FALSE.
Подвесь этот вызов на hook_init и проверяй путь, где нужно отключить кеш...
7
Я слегка запутался и не с того начал. Это не то.
Программка (висящая на порту 20202) не может дёргать функции друпала, и работает типа как API (отдаёт html при обращении к ней по http).
Прожка самописная. Её можно поправить. Но друпал её выхлоп кэширует и не трогает какое-то время. Мне нужно создать страницу как в оригинальном посте и заставить друпал «исполнять» написанное, _всегда_ (не кэшировать).
Если это отдельный скрипт, у которого не подвязан апи друпала, то кеш друпала тут ни причём.
Или я не так понял...
> Если это отдельный скрипт, у которого не подвязан апи друпала, то кеш друпала тут ни причём.
Да это отдельный скрипт без апи друпала.
Когда к нему обращаются, он отдаёт свежие данные.
В друпале создана страница которая его дёргает:
readfile('http://localhost:20202/');
И друпал с текущими настройками (кэширование всего) отдаёт кэшированные данные.
Надо сделать так чтобы именно эта страница (или все с форматом PHP) не кэшировалась, чтобы анонимный пользователь видел свежие данные.
CacheExclude
Оно! То что нужно. Работает. Спасибо. Что только не пробовал гуглить (disable/no/non/off/…), а об exclude забыл ).
ну в общем то, этот модуль и использует упомянутую выше функцию
---
А я не забыл.
А как такое же на Drupal 8 организовать? Модуль CacheExclude на восьмерку не лезет
Нужно отключение кэша на заданных страницах.
d8:
http://drupal.stackexchange.com/questions/189451/cache-in-hook-preproces...
https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21Render%21...