Evgenii Legotckoi12 апреля 2017 г. 0:03
Принудительное обновление JavaScript и CSS у пользователя
Всем привет!!
Разираюсь с nginx и включил кеширование статичных файлов, ну там скриптов, CSS, картинок и т.д на стороне пользовательского браузера. Так вот, когда я меняю что-то в CSS или javascript, то изменения не применяются пока не нажать последовательно CTRL+R CTRL+F5. Только тогда браузер скачивает новые скрипты и стили. Ладно я могу так сделать пока тестирую и разрабатываю сайт, но пользователь же так не будет делать, да и возможно не знает о таком. Как можно заставить пользовательский браузер обновить эти файлы, когда включено кеширование?
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Вам это нравится? Поделитесь в социальных сетях!
Комментарии
Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Пожалуйста, авторизуйтесь или зарегистрируйтесь
B
- Bogdannn
- 28 марта 2024 г. 5:15
C++ - Тест 001. Первая программа и типы данных
- Результат:46баллов,
- Очки рейтинга-6
Последние комментарии
Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий Кононенко5 февраля 2024 г. 12:50
EVA25 декабря 2023 г. 21:30
Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Сейчас обсуждают на форуме
Как получить в массив значения из связанной модели? Спасибо, разобрался:))
AC
QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…
Alexandru Codreanu19 января 2024 г. 22:57
BlinCT27 декабря 2023 г. 19:57
Дмитрий10 января 2024 г. 15:18
Evgenii Legotckoi12 декабря 2023 г. 17:48
Чтобы обновить javascript или CSS файлы, необходимо, чтобы url этих файлов немного отличался. Но для этого вовсе не обязательно менять имя самого файла. Можно просто добавлять в url знак вопроса и число. Тогда браузер при скачивании страницы обнаружит, отличающийся url и загрузит обновлённый скрипт заново. В HTML коде это будет выглядеть так:
Таким образом, когда вы выкатываете новую версию скрипта или стилей, достаточно будет поменять число, например увеличить на единицу.
Было:
Стало:
Кто-то ещё делает автоматический расчёт контрольной суммы и добавляет её вместо вручную введённой цифры. Расчёт делается сервером, но это только добавит нагрузку на мой взгляд, которая не имеет смысла. Скриптов всё равно может быть не так уж и много, что можно вручную поменять пару циферок. Во всяком случае на небольшом ресурсе это можно сделать и вручную, а на крупном проекте новые обновления не так часто выкатываются, что можно также поменять пару циферок.
К слову говоря, например, ВКонтакте по всей видимости так и делают, если взглянуть на url их скрипта openapi.js, который служит для добавления всяких виджетов на сайты.