2015-12-27 98 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标头的工具无法看到它实际发送。