Как сделать версию файлов в разделе <HEAD>? - PullRequest
6 голосов
/ 11 августа 2010

Я видел на различных веб-сайтах, как разработчики создают версии своих файлов css / javascripts, указав строки запросов, подобные:

<head>
    <link rel="stylesheet" href="css/style.css?v=1">
    <script src="js/helper.js?v=1">
</head>

Как это делается?Это хорошая практика?Я искал вокруг, но, видимо, я не ищу правильные термины.Если это имеет значение, я использую ASP.NET.

Редактировать: : Я только что заметил (через Firebug), что если я "верю" свои файлы (? V = 1), они будутвсегда будет загружаться и всегда будет переопределять кеш.Есть ли способ обойти это?

Заранее спасибо.

Ответы [ 3 ]

4 голосов
/ 11 августа 2010

Они не совсем версионные.Мы делаем это потому, что некоторые браузеры не всегда будут запрашивать таблицы стилей должным образом (они даже не будут проверять последние изменения), поэтому, чтобы заставить их сделать новый запрос, вы можете увеличить число в своем html-файле, который ссылается на него.Это что-то вроде взлома, но это работает.

2 голосов
/ 11 августа 2010

Это помогает с кэшированием, когда вы этого хотите, и принудительной загрузкой, когда вы этого не делаете.Файлы кэшируются в зависимости от их пути.Так что, если путь тот же, то он может извлечь из кэша.Но если они отличаются, следовательно, новая версия, то он не будет использовать кэш, но должен вытащить новый файл.По крайней мере, так я это использовал.

1 голос
/ 11 августа 2010

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

Я не знаю, как это сделать автоматически в ASP.NET, например, Ruby on Rails проверяет последнюю измененную метку времени в файле и добавляет ее в качестве номера версии в файл. Я уверен, что вы сможете сделать нечто подобное в ASP.NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...