@Jony1337

Ctrl+shift+r через php можно?

Иногда что то меняю на сайте но не меняется при перезагрузке странички приходится нажимать Ctrl+shift+r что удаляет кэш для текущей странице если я не ошибаюсь . Как сделать через php или javascript что бы когда заходил пользователь у него удалялся кэш связанный с той страничкой или можно даже что то сделать что бы ничего у него не сохранялось с сайта в браузере .
  • Вопрос задан
  • 530 просмотров
Решения вопроса 3
65536
@65536
Сделать где-нибудь 2 переменные хранящие номера версий для джс файлов и цсс. Добавлять их к урлам через знак вопроса, типа klmn.css?123. Когда что-то поменялось, менять значения. Браузер гарантированно скачает файл заново. При этом кеширование можно ставить бесконечное
Ответ написан
PavelK
@PavelK
Предыдущий совет наиболее правилен, но вот ещё один, в html:
<meta http-equiv="Cache-Control" content="no-cache">
Ответ написан
Комментировать
@remzalp
Программер чего попало на чем попало
Самый простой вариант для самой страницы - в заголовках отдавать требование не кэшировать.

php.net/manual/ru/function.header.php
<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Дата в прошлом
?>


Для подключаемых файлов самый надежный вариант уже предложил 65536, просто менять номер в ссылке. Можно вообще так (пример):
<link rel="stylesheet" href="1.css?<php echo rand(); ?>">


тогда будет для каждого запроса страницы новая ссылка на статику.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы