在http://html5boilerplate.com/瀏覽樣板代碼我疑惑這個用法:什麼是查詢字符串在這個樣式表的href中做什麼?
<link rel="stylesheet" href="css/style.css?v=1">
在http://html5boilerplate.com/瀏覽樣板代碼我疑惑這個用法:什麼是查詢字符串在這個樣式表的href中做什麼?
<link rel="stylesheet" href="css/style.css?v=1">
要強制更新,如果它已經在瀏覽器緩存。 v可能是版本的簡稱。
要擴大Simon's correct answer ...
常以節省帶寬,樣式表(除其他站點資源)發送標頭的說,他們本應到期,從現在(通常爲一年)很長一段時間的瀏覽器。他們還發送304沒有修改標題。
這很好,但如果有人想更新樣式表呢?如果它被要求爲style.css
,並且隨後的請求是style.css
,那麼最終用戶將永遠不會重新下載它(反正不是一年)。
要解決這個問題,您可以附加一個查詢字符串,該字符串在文件執行時發生更改。例如,它可以很容易地在PHP
<?php
$file = 'style.css';
?>
<style type="text/css" rel="stylesheet" href="<?php echo $file . '?v=' . filemtime($file); ?>" />
現在,當文件被更新,查詢字符串的變化,文件被重新下載到所有最終用戶完成。直到(a)到期時間到或(b)查詢字符串再次發生變化,它纔會再次下載。
可能的重複[什麼附加「?v = 1」到鏈接和腳本標記中的CSS和Javascript URL?](http://stackoverflow.com/questions/3466989/what-does-appending-v- 1到CSS和JavaScript的的URL,在鏈接和腳本標籤-DO) – 2011-08-18 16:29:15