我使用的是Chrome版本31.0.1650.63 m.
最近,我注意到Chrome开发者控制台中出现了一些错误,但我的网站似乎没有任何问题.经过调查,它们似乎与嵌入式YouTube链接有关.有问题的标记如下:
视频本身是无关紧要的(我只是抓住了我在youtubes首页上看到的第一个作为测试),但是我已经包含了我在这里使用的链接,以防万一发生了非常具体的事情.
Chrome中请求的响应标头如下:
Alternate-Protocol:80:quic Cache-Control:no-cache Content-Encoding:gzip Content-Length:2560 Content-Type:text/html; charset=utf-8 Date:Sun, 12 Jan 2014 20:35:54 GMT Expires:Tue, 27 Apr 1971 19:44:06 EST Server:gwiseguy/2.0 X-Content-Type-Options:nosniff X-Frame-Options:ALLOWALL X-XSS-Protection:1; mode=block; report=https://www.google.com/appserve/security-bugs/log/youtube
我在Chrome开发者控制台中遇到的错误如下:
Invalid 'X-Frame-Options' header encountered when loading 'http://www.youtube.com/embed/hhhrWFxWQRk': 'sil' is not a recognized directive. The header will be ignored. Error parsing header X-XSS-Protection: sil: expected 0 or 1 at character position 0. The default protections will be applied.
在大红色字母.我注意到的第一件事是错误都引用了值"sil",我在HTTP请求的任何响应头中都没有看到.
视频显示并播放正常,错误表示将使用默认设置 - 因此这看起来不是问题.但是,我很想知道发生了什么,以及为什么会发生这些错误.
我注意到错误与XSS有关,根据我的研究,我认为X-XSS-Protection标题仅适用于IE8,而从YouTube返回的值无效(report = et al).根据规范,X-Frame-Options标头的值似乎无效,但维基百科(我知道!)引用了ALLOWALL选项:
除此之外,一些广告网站返回非标准的ALLOWALL值,目的是允许在任何页面上构建其内容(相当于根本不设置X-Frame-Options).[31]
这是一个有效的问题吗?这是Chrome解析错误,youtube标题的问题,还是我完全忽略了这一点?
我还在Firefox v26,IE 11.0.6600.16476和Opera 12.16中进行了一些测试,并且这些浏览器都没有产生此错误.