考慮一下您希望阻止其他網站將您的網站嵌入
/* break us out of any containing iframes */ if (top != self) { top.location.replace(self.location.href); }
雖然有效,但此程式碼可以被框架破壞破壞器繞過:
<script type="text/javascript"> var prevent_bust = 0 window.onbeforeunload = function() { prevent_bust++ } setInterval(function() { if (prevent_bust > 0) { prevent_bust -= 2 window.top.location = 'http://example.org/page-which-responds-with-204' } }, 1) </script>
此buster的操作方式是:
那麼,如何打敗破壞框架的破壞者呢?
一個有效的方法是使用大多數現代瀏覽器支援的 X-Frame-Options:deny 指令。即使停用腳本,此指令也會阻止框架:
X-Frame-Options: deny
瀏覽器支援:
Firefox (3.6.9):
Chrome/Webkit:
以上是如何擊敗繞過傳統 Frame-Busting JavaScript 的 Frame-Busting Buster?的詳細內容。更多資訊請關注PHP中文網其他相關文章!