禁止網頁被他人嵌套

摘要

網頁被他人嵌套,可能會引起一些問題,html

  1. 大量的403/404 訪問問題,
  2. 可能會被木馬網站劫持,
  3. 地址沒法與內容一一對應。

方案一

前端檢測 top 窗口是否就是 self ,前端

try{
  top.location.hostname;
  if (top.location.hostname != window.location.hostname) {
    top.location.href =window.location.href;
  }
}

catch(e){
  top.location.href = window.location.href;
}

方案二

在後端項目的 .htaccess 文件中使用 X-Frame-Options 的 SAMEORIGIN 參數後端

<ifModule mod_headers.c>
    Header always append X-Frame-Options SAMEORIGIN
</ifModule>

備註
X-Frame-Options 有三個選項:
DENY:表示該頁面不容許在 frame 中展現,即使是在相同域名的頁面中嵌套也不容許。
SAMEORIGIN:表示該頁面能夠在相同域名頁面的 frame 中展現。
ALLOW-FROM uri:表示該頁面能夠在指定來源的 frame 中展現。app

通常使用 SAMEORIGIN 容許同域嵌套。網站

具體配置可參考: http://www.javashuo.com/article/p-uqnfudmi-eg.htmlcode

總結

我通常會喜歡後端部署文件配置,很是簡便,整站生效。htm

相關文章
相關標籤/搜索