2015-12-27 95 views
0

我有一個簡單的HTML網頁,其中開頭是這樣的:爲什麼max-age被忽略?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
    <meta http-equiv="Cache-Control" content="public, must-revalidate"> 
    <meta http-equiv="Cache-Control" content="max-age=88000" /> 
    <script type="text/javascript" src="/js/index.js"></script> 
.... 

然而,當我檢查index.js文件中的FF web控制檯,我看到Cache-Control: "max-age=0"。爲什麼是這樣的,我該如何解決它?謝謝!

+0

請參閱http://stackoverflow.com/questions/49547/making-sure-a-web-page-is-not-cached-across-all-browsers/ – guest271314

回答

2

沒有理由期望HTML文件中的meta標記影響爲其引用的JavaScript文件(或甚至是爲HTML文件本身發送的HTTP標頭)發送的HTTP標頭。

HTTP標頭由使用中的Web服務器(或更一般的HTTP服務器)軟件設置,可能受服務器上系統範圍或目錄範圍設置的影響。很久以前,這個想法是某些meta標籤可能影響HTML文檔本身的HTTP標頭,但這通常不在服務器中實現。相反,瀏覽器可能會使用一些meta標記,並且就好像已發送相應的HTTP標頭一樣,但a)僅適用於HTML文檔本身(如果有的話),以及b)檢查HTTP標頭的工具無法看到它實際發送。