Запрет кеширования веб-приложений - PullRequest
0 голосов
/ 19 января 2020

Есть ли способ отключить кэширование браузеров при посещении веб-сайтов?

У меня есть веб-проект React, к которому я обращаюсь, например, Chrome. Когда я создаю новую версию и загружаю ее на сервер, не все браузеры обновляют сайт. Например, на моем телефоне Android установлено Chrome. Когда я захожу на страницу, а затем обновляю сайт на сервере до новой версии, Chrome по-прежнему отображает старую ранее загруженную версию. Даже если я нажму refre sh, он все равно сохранит старую страницу. Я нашел эту статью , в которой упоминается отключение кэширования. Это правильный подход?

Ответы [ 2 ]

0 голосов
/ 19 января 2020

Отключение кэширования - неправильный подход. Используя очистку кеша , вы можете кэшировать ресурсы c до тех пор, пока это необходимо, но когда они обновляются, загружайте новые версии.

Как это будет реализовано, будет зависеть от того, как вы построить для производства и какой стек вы используете. Некоторые инструменты для сборки внешнего интерфейса, такие как Laravel Mix, могут сделать это за вас, а такие вещи, как Webpack, могут сделать это за вас с небольшой настройкой. Там, где этот подход не является жизнеспособным, я также создал помощников на таких языках, как PHP и Javascript, прежде чем добавлять метку времени файла в качестве параметра строки запроса, что также должно решить эту проблему.

0 голосов
/ 19 января 2020

Я не уверен, что понял, что вы имеете в виду, но попробуйте поместить это в тег <head>:

<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...