2015-04-14 85 views
1

我有一個WordPress的網站,我有下面的代碼設計,防止點擊劫持:反點擊劫持代碼使頁面不斷刷新

<script type="text/javascript"> 
    if (self === top) { 
     var antiClickjack = document.getElementById("antiClickjack"); 
     antiClickjack.parentNode.removeChild(antiClickjack); 
    } else { 
     top.location = self.location; 
    } 
</script> 

然而,這段代碼的事業我的管理頁面一個不斷刷新。該頁面位於我正在構建的主題的自定義部分中。發生這種情況是因爲預覽顯示在iframe中。

我可以做些什麼來防止傳統瀏覽器的點擊,同時也解決了頁面不斷重新加載的問題?理想情況下,我可以以某種方式修改此JavaScript。

回答

0
<script type="text/javascript"> 
    if (self === top || self.location === 'yourPreviewPage') { 
     var antiClickjack = document.getElementById("antiClickjack"); 
     antiClickjack.parentNode.removeChild(antiClickjack); 
    } else { 
     top.location = self.location; 
    } 
</script> 

你可以跳過這些頁面(在你的情況下,特別是預覽頁面)使用上面類似的代碼框架。 爲anticlickjacking其他選項是使用響應頭 -

CSP frame ancestorx frame options