2009-09-17 58 views
2

上個月的某個時候,一個隨機的網站決定在一個框架中爲我公司的網站服務。忽略「他們在做什麼?」的問題一分鐘,我用一些簡單的框架剋星的Javascript:選擇性框架破解Javascript

<script type="text/javascript"> 
if (top.location != location) { 
    top.location.href = document.location.href ; 
} 
</script> 

這部分的偉大工程。問題是,並非所有的框架都不好:如果有人通過ow.ly來到該網站,我們不想破壞他們的框架。我已經嘗試了一些東西,要麼將其列入白名單ow.ly,要麼將黑名單列入違規網站,但我無法在足夠長的時間內搜索top.location。有什麼我可以根據網址阻止一些幀?

爲了澄清,我意識到我不太可能贏得這場殘酷的軍備競賽。我很好。我試圖做的是建立一個網站的白名單,允許在一個框架中顯示我們的網站。

+0

你必須使用javascript嗎?用什麼編程語言在服務器上工作(asp,asp.net,php)? – 2009-09-17 19:31:47

+0

服務器平臺是否重要? Tomcat可以通過HTTP執行任何操作。有問題的服務器現在在IIS/ASP.NET/C#上,但它可能不會長期存在。 – ojrac 2009-09-17 19:35:15

+0

好吧,我有同樣的問題,也許你可以幫助我們使用我們使用的語言找到的解決方案 – 2009-09-17 19:54:08

回答

3

從您的後端使用一些幫助。你可以檢查HTTP引用標頭,然後相應地啓用你的frame-buster。

+0

+1:這是我見過的最好的選擇,假設你真的無法在客戶端獲得這些信息。我會等待接受一兩天,以防萬一。 – ojrac 2009-09-17 20:23:59

+0

Frame-Buster vs frame-buster-buster戰爭是一個可怕的浪費時間。找到可以做到的事實際上會對您的用戶羣產生積極的影響。 – 2009-09-23 22:40:05