我有一个完美的PHP页面,里面有一个iframe。突然它在Chrome中停止运行,出现此错误:
Chrome在此页面上检测到异常代码并将其屏蔽以保护您的个人信息......
知道怎么解决吗?
答案 0 :(得分:6)
环顾四周后发现Chrome已将X-XSS-Protection的默认实施改为'X-XSS-Protection:1; mode = block'(reference)
因此,最快的解决方案(并且代码中的更改最少)是通过从服务器发送值0来禁用X-XSS-Protection。
以下是如何从PHP
执行此操作header("X-XSS-Protection: 0");
答案 1 :(得分:1)
Chrome将其X-XSS-Protection的默认实施更改为'X-XSS-Protection:1; mode = block'主要是在Chrome Version 60和window 10 PC中发现此问题,请参阅以下与此问题相关的参考链接
https://bugs.chromium.org/p/chromium/issues/detail?id=702542
https://bugs.chromium.org/p/chromium/issues/detail?id=706038
https://productforums.google.com/forum/#!topic/chrome/4MUJd75N4Jw
答案 2 :(得分:1)
此处的其他帖子提供了 答案 。但是他们都没有提供任何基于代码样本的 解释 ,所以,我会尝试:
这是由显示HTML POST
'的网页引起的,当该HTML包含JS事件触发器时,例如:
<p class="someParagraph" onClick="doTheMagicThing();">
如果您有一个iframe,它会在POST
或论坛中收到这样的文字,并且您也会显示该文字,那么Chrome会发出错误(并有效阻止该页面),除非您禁用X-XSS-Protection
标题。
当然,在独立组件之间传递大量这样的html不被认为是好的设计。