当前位置:  开发笔记 > 前端 > 正文

YSlow在ETag上给出不一致的结果

如何解决《YSlow在ETag上给出不一致的结果》经验,为你挑选了1个好方法。

当我对我的网站运行YSlow时,我在"配置ETags"项目上得到一个"F"; 它声称很多(全部?)我的图像,样式表等没有标签.

但是,如果我直接在其中一个图像上运行测试,我会在etag测试中获得A. 此外,在Firebug Net面板的Response标题上,我可以在整个页面和direct-url版本上看到此项目的etag.

我可能会做些什么来引起这种奇怪的行为?

(如果有人想要检查自己,我正在这里和这里打网址.我不介意进行健全性检查,看看是否只是我的浏览器感到困惑.)



1> 小智..:

关于IIS 7,我的答案是忽略YSlow的建议.

生成ETag时,IIS 7使用元数据库更改编号为零.这是冒号之后的部分...所以etag将始终像"5321116d3585ce1:0",其中第一部分是从上次修改的文件时间生成的,然后是冒号和元数据库更改编号.

从IIS 7开始,Microsoft始终将更改编号设置为零,因此即使在多个Web服务器上也是如此.对于IIS 5和6,如果要获得相同的最终结果,可以将其设置为零:

http://technet.microsoft.com/en-us/library/ee619764(WS.10).aspx

如果YSlow仍在使用iis_re = new RegExp的正则表达式规则("^ [0-9a-z] +:[0-9a-z] + $"); 那么他们就错了,应该重写它以接受etag为有效,如果它以:0结束

推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有