明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

如何避開頁面被人嵌套在 iframe 里?

[摘要]如題,我的網(wǎng)站內(nèi)容被別人用 iframe 嵌套在自己的網(wǎng)站里了,有沒有辦法屏蔽不讓他嵌套呢?還有個比較好的辦法:在響應(yīng)頭里加一個X-Frame-Options取值有三種,大部分瀏覽器都支持:DENY:瀏覽器拒絕當(dāng)前頁面加載任何Frame頁面SAMEORIGIN:frame頁面的地址只能為同源域名下...
如題,我的網(wǎng)站內(nèi)容被別人用 iframe 嵌套在自己的網(wǎng)站里了,有沒有辦法屏蔽不讓他嵌套呢?

還有個比較好的辦法:

在響應(yīng)頭里加一個X-Frame-Options

取值有三種,大部分瀏覽器都支持:

DENY:瀏覽器拒絕當(dāng)前頁面加載任何Frame頁面

SAMEORIGIN:frame頁面的地址只能為同源域名下的頁面

ALLOW-FROM origin:origin為允許frame加載的頁面地址

這樣被不同源的頁面以iframe包含時就不會顯示了

寫腳本

if (window != window.top) 
{    
window.top.location.replace(window.location)    
// 這是直接代替外窗,你也可以干別的
}
if (window != window.top) 
{
window.top.location.replace(window.location)
//加彈窗代碼 干死他們 還賺錢
}

新浪微博是這么做的

if (top != self) 
{    
top.location = self.location;
}

基本可以抵擋大多數(shù)iframe嵌套了。

還有看一下人家是怎么利用iframe嵌套實施攻擊的,就知道怎么防御了

目前最好的js的防御方案為:

if (self == top) {
    var theBody = document.getElementsByTagName('body')[0];
    theBody.style.display = "block";
} else {
    top.location = self.location;
}

添加過濾腳本。原理是當(dāng)檢測到當(dāng)前的url鏈接不是自己的時候,讓src指向空白地址。具體代碼請google。

以上就是 如何避免網(wǎng)頁被人嵌套在 iframe 里?的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。