Запретить кэширование или разрешить в PHP или Apache

By | 18/04/2011

Столкнулся с кэшированием и узнал, что запрет кэширования методом в Wikipedia не работает. Вот этот метод:

А теперь о том, что протестировано и то, что работает.
Запретить кэширование на PHP:

Чтобы не приписывать каждой странице эти сточки на PHP, можно сделать это на уровне конфигурации Apache, для этого нужно:
1) Зайти в конфиг Апача и убедиться, что следующие модули включены. Если они закомментированы, то раскомментируйте их:

2) В файле .htaccess вписать строки, запрещающие кэширование:

Но полный запрет кэширования повышает нагрузку на сервер и замедляет загрузку контента на стороне пользователя. Поэтому, предложенный ниже способ разрешает кэширование только на один час. Т.е. обновляться кэш на стороне пользователя будет раз в час, при этом Вы сэкономите ресурсы своего сервера.
Разрешаем кэширование на 1 час при помощи PHP:

Или разрашем кэширование на 1 час при помощи конфига Апача.
1) Убеждаемся, что нужные модули mod_headers.c и mod_expires.c включены (как было описано выше).
2) В нужной папке создаем файл .htaccess и прописываем следующие строки:

  • http://twitter.com/websmen Игорь

    а как в файле .htaccess сделать чтоб 1 конкретную страницу некешировать?