[Решено] Кэширование страниц с PHP

Главные вкладки

Аватар пользователя 4apnw 4apnw 20 августа 2015 в 9:02

Есть страница с PHP форматом содержимого:

<?php
  readfile
('http://localhost:20202/');
?>

Программа отдаёт собственно содержимое страницы.

Друпал его кэширует для анонимных пользователей в соответствии со своими настройками.

Вопрос: как отменить кэширование отдельной страницы, или всех страниц с форматом PHP?

Комментарии

Аватар пользователя 4apnw 4apnw 20 августа 2015 в 10:24

Nikit wrote:
А друпал какой?

7

Nikit wrote:
Это вы сейчас для 6-ки.
Для 7: https://api.drupal.org/api/drupal/includes%21bootstrap.inc/function/drup...
аргумент - FALSE.
Подвесь этот вызов на hook_init и проверяй путь, где нужно отключить кеш...

Я слегка запутался и не с того начал. Это не то.

Программка (висящая на порту 20202) не может дёргать функции друпала, и работает типа как API (отдаёт html при обращении к ней по http).

Прожка самописная. Её можно поправить. Но друпал её выхлоп кэширует и не трогает какое-то время. Мне нужно создать страницу как в оригинальном посте и заставить друпал «исполнять» написанное, _всегда_ (не кэшировать).

Аватар пользователя Nikit Nikit 20 августа 2015 в 10:48

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

Аватар пользователя 4apnw 4apnw 20 августа 2015 в 11:08

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

Да это отдельный скрипт без апи друпала.
Когда к нему обращаются, он отдаёт свежие данные.
В друпале создана страница которая его дёргает:
  readfile('http://localhost:20202/');
И друпал с текущими настройками (кэширование всего) отдаёт кэшированные данные.
Надо сделать так чтобы именно эта страница (или все с форматом PHP) не кэшировалась, чтобы анонимный пользователь видел свежие данные.

Аватар пользователя Nup Nup 10 марта 2017 в 6:07

А как такое же на Drupal 8 организовать? Модуль CacheExclude на восьмерку не лезет Smile
Нужно отключение кэша на заданных страницах.