@ibesenok

Как убрать кеш на сайте?

У клиента есть сайт на Вордпрессе. Никаких плагинов для кеширования нет. Но при обновлении страницы, через раз вылетает то нужная картинка (которая загруженная на сервере), то её предыдущая копия (Которой на сервере не существует). Путь к ним одинаковый.

Точно так же когда загружаешь стили, они не обновляются. Хотя с php файлами такого нет.
  • Вопрос задан
  • 785 просмотров
Пригласить эксперта
Ответы на вопрос 4
ivanvorobei
@ivanvorobei
iOS разработчик, канал https://t.me/sparrowcode
Кешируется на стороне хостинга.

Для CSS добавьте в .htaccess

<FilesMatch ".(css)$">
    Header append Cache-Control "no-store, no-cache, must-revalidate"
</FilesMatch>
Ответ написан
Попробуйте посмотреть через другой браузер. Если в нем все в порядке (думаю так и будет), то почистите кеш браузера через его настройки
Ответ написан
IonDen
@IonDen
JavaScript developer. IonDen.com
Кэш это всегда проблема, по этому продвинутые разработчики давно уже научились его сносить принудительно с помощью версии файлов. Каждая новая сборка изменяет версию, например с 1 на 2. Далее добавляем версию в путь к статическим ресурсам, примерно так:
<img src="image.png?v=2" alt="" />
<!-- или генерируем имена файлов с учетом версии -->
<img src="image_v2.png" alt="" />

Ну и далее, каждый раз при обновлении и сборке проекта, увеличиваем номер (очень часто вместо простого номера используется случайно сгенерированный хэш или текущая дата в секундах (unix-time).

Посмотрите например в исходники тостера, вы увидите, что здесь, в имена статических файлов, добавляется хэш:
<link rel="stylesheet" href="https://habracdn.net/toster/frontend.47dba5ea-12bc-11e6-81cb-38eaa71001f0.css">
Ответ написан
Комментировать
@inDeepCode
Проблема может быть в лоадбалансере/варнише.
Как пример: контент храниться на разных серверах и соответственно подгружаеться то с одного (где она уже обновилась), то с другого (где еще нет).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы