Что такое style.css? ver = 1 tag?
Я выяснил, что некоторые сайты используют тег css, например style.css?ver=1
. Что это?
Какова цель ?ver=1
?
Как это сделать в коде?
Ответы
Ответ 1
Чтобы избежать кэширования CSS.
Если веб-сайт обновляет свой CSS, он обновляет ver до более высокого номера, поэтому браузер вынужден получить новый файл и не использовать кэшированную предыдущую версию.
В противном случае браузер может получить новый HTML-код и старый CSS, а некоторые элементы веб-сайта могут выглядеть сломанными.
Ответ 2
Добавление '? ver = 1' делает HTTP-запрос похожим на запрос GET с параметрами, а хорошо управляемые браузеры (и прокси) отказываются кэшировать параметризованные запросы. Разумеется, хорошо продуманные браузеры (и прокси) должны также обратить внимание на заголовки ответов "Кэш-контроль: отсутствие кеша", "Истекает", "Последнее изменение" и "ETag" (все они были добавлены в HTTP для указания правильного поведения кэширования).
Метод '? ver = 1' является дорогостоящим способом принудительного поведения, когда разработчик сайта не знает, как (или слишком ленив) реализовать правильные заголовки ответов. В частности, это означает, что каждый запрос страницы будет принудительно запрашивать этот файл CSS, хотя на практике файлы CSS меняются редко, если это вообще возможно.
Моя рекомендация? Не делайте этого.
Ответ 3
Цель? ver = 1 - параметризовать файл css, поэтому, когда они публикуют новый файл style.css, они запускают версию и заставляют клиента загружать новый файл, вместо того, чтобы вытаскивать из кешированной версии.
Ответ 4
Я думаю, что ?ver=1
для версии нет. веб-приложения. Каждый раз, когда создается новая сборка, приложение может обновить ver
до новой версии. Это значит, что браузер загрузит новый файл CSS и не будет использовать кешированный (оба используют разные имена файлов).
Вы можете обратиться к этому сайту: http://www.knowlegezone.com/36/article/Technology/Software/JavaScript/CSS-Caching-Hack----javascript-as-well
Ответ 5
Если вы разрабатываете веб-приложение в HTML и CSS или любую другую технологию, и используете некоторые внешние файлы CSS или JS, вы можете заметить одно: в некоторых случаях, если вы внесли какие-либо изменения в существующие .css или .js, тогда браузеры не сразу отражают изменения.
Что происходит в этом случае, так это то, что браузер не загружает новую копию последней версии файлов .css и .js, вместо этого использует файлы, хранящиеся в вашем локальном кеше. В результате изменения, которые вы сделали недавно, не видны вам.
<link rel="stylesheet" href="style.css?v=1.1">
В приведенном выше случае при загрузке веб-страницы браузер будет обрабатывать "style.css" как другой файл вместе с "? v = 1.1". Следовательно, браузер должен загрузить новую копию, если таблица стилей или файл script.
Ответ 6
IMO лучшим способом сделать это будет включение хеша, сгенерированного из размера файла или контрольной суммы на основе содержимого файла или последней измененной даты. Таким образом, вам не нужно обновлять номер версии и просто отпустить номер из файла, изменяющего свойства.