2011-09-24 74 views
12

如何緩存幾個特定的​​JavaScript & CSS文件。我發現建議從這個網站把這個在我的.htaccess文件緩存特定的Javascript和CSS文件

AddOutputFilter DEFLATE css js 
ExpiresActive On 
ExpiresByType application/x-javascript A2592000 

但它是不完整的。 .htaccess什麼是.htaccess以及如何在我的網站根文件夾中創建它,將其存儲在何處?

什麼是下面的語句的含義是:

AddOutputFilter DEFLATE css js 
ExpiresActive On 
ExpiresByType application/x-javascript A2592000 

我不想緩存所有我的JavaScript & CSS文件,而只是將永遠不會改變少數幾個特定文件。

我該怎麼做?

+2

? '.htaccess'是Apache Web服務器的控制文件。如果你使用IIS,它沒有任何意義。 – Oded

+0

我將使用IIS ...所以請告訴我該怎麼做。我需要寫在我的asp.net文件緩存幾個特定的​​JS和CSS文件。 plzz詳細討論。謝謝 –

回答

25

您可以配置IIS通過擴展緩存特定文件。例如:

選擇您的css/js文件所在的文件夾,然後單擊輸出緩存。 enter image description here

然後添加你要緩存的文件擴展名:

enter image description here

我不認爲你可以指定除非你寫一個HTTP 處理器在緩存每個文件的基礎哪些模塊爲每個文件獨立添加適當的頭文件,但是從IIS開始,這是如何完成的。

然後,您可以使用螢火蟲/提琴手或您選擇的工具驗證您是否收到304個響應。

我希望這是有幫助的。

+0

我可以通過HTTP處理程序緩存js&css文件....如果是這樣,可以指出我的任何好文章。 –

+0

@ user750398看這篇文章:http://blog.sb2.fr/post/2008/11/21/EN-Css-Caching-and-Compression-with-HttpModule-for-ASPNET.aspx – Icarus

0
  1. AddOutputFilter DEFLATE: 在這種情況下css & js你的CSS和JS發送到服務器之前,輸出壓縮(通常是gzip的)。
  2. ExpiresActive On配置:設置Expires和緩存控制標頭在
  3. ExpiresByType:設置內容類型的過期規則在這種情況下application/x-javascript一個月A2592000 => 24 * 3600 * 30ms

向我推薦的,而不是通過的.htaccess你應該添加一個版本號到您的JS文件,ALA處理特定JS:

<script src="link/to/file.js?rev=xxx"></script>

然後,當你更新你的文件剛剛更新轉數。 並且您的客戶將自動獲得新文件。

資源:

+3

我使用的IIS不是apache。 –

1

這很酷,我會反正添加一個文件修訂並使IIS緩存css + js文件。如伊卡洛斯指定的那樣。

然後,如果您更新服務器上的文件只需添加一個新的修訂版本號,這也可以是一個時間戳。

您正在使用什麼網絡服務器