为什么Firefox没有完整实现HTTP协议

vary头是http1.1 引入的一种内容协商机制, 目的是影响缓存的key以便缓存同一url的不同版本. 

但是firefox却不能支持它 当服务器输出 vary 时, firefox在下一次请求的时候会抛弃if-modified-since头部
导致服务器重新响应200. 

不管是vary导致了firefox未能找到缓存项以读取lastmodify信息, 还是firefox对vary的解析有bug, 总之这个错误是 
发生了. 

让我们来测试一下:

 

<%@ Page Language="C#" Inherits="System.Web.UI.Page" %>



<script runat="server" language="C#">

    protected override void OnInit(EventArgs e)

    {

        base.OnInit(e);

        if (Request.Headers["If-Modified-Since"] != null) {

            Response.StatusCode = 304;

            return;

        }

        Response.AddHeader("Vary", "*");

        Response.AddHeader("Last-Modified", DateTime.Now.ToString("r"));

    }

</script>

 

为什么Firefox没有完整实现HTTP协议
 
为什么Firefox没有完整实现HTTP协议
 
为什么Firefox没有完整实现HTTP协议
 
为什么Firefox没有完整实现HTTP协议

 

你可能感兴趣的:(firefox)