在我們的項目中,我們有一大堆小的css/js文件,所以當我們構建視圖時,我們發現自己寫了很多<link>
或<script>
標籤,迫使瀏覽器對我們的css/js內容提出許多請求。爲了解決這個問題,我們開始尋找一種服務器支持的方式,將所有請求轉化爲一個請求,將每個css文件或與該操作關聯的每個js文件轉儲到響應中。強制瀏覽器緩存對Castle MonoRail操作的請求?
沒有進入太多細節,我們創建了一個助手類,接受文件,連接起來,然後呈現一個標籤,像這樣:
<script type="text/javascript" src="/content/js15628453.rails"></script>
的ContentController則具有使用默認的行動「 js15628453'找到Helper存儲連接文件的位置並將其流出。這工作得很好。
但是,正如Firebug報告的那樣,瀏覽器始終會發送一個請求到「/content/js15628453.rails」以獲取連接文件,儘管URL始終是相同的,並且響應始終是相同的。我嘗試過所有類型的HTTP Cache-Control
,Expires
,Last-Modified
等標題的組合,但尚未得到Firebug從緩存中加載的報告。
爲什麼瀏覽器可能忽略這些頭文件?有沒有其他選擇我可以嘗試強制它被緩存?