2013-03-13 58 views
-1

我有一個旋轉鏈接,我不想讓人們在iframe中打開它。如何停止iframe中的php進程?

如何停止iframe中的php進程?

header("X-FRAME-OPTIONS: DENY"); 

在firefox和chrome中不起作用。我的鏈接是(EDITED)

+2

請定義*「在firefox和chrome中不起作用」*。你期望什麼?反而發生了什麼? – hakre 2013-03-13 09:51:14

+0

https://developer.mozilla.org/zh-CN/docs/Mozilla/QA/Bug_writing_guidelines – inquam 2013-03-14 08:13:33

回答

1

檢查Access-control-allow-origin標題。

它允許您控制哪個域可以訪問或構建您的腳本。

可以3個值之間進行選擇:只有來自同一域

  • 僅從你做
  • 任何人(通配符)
1

由於清單上列出的域PHP永遠不會在iframe但在服務器端執行無法可靠地知道是否重新任務起源於你網站上的iframe

如果你打算(這是不是很清楚)是確保人們不把你的網站的IFRAME在其他網站上,那麼你可以檢查請求的引薦等。但其中大部分可以被欺騙。

更新由於評論:

那麼很不幸可靠獲取此類型的信息沒有很好的標準方法。如果你自己在你的網站上有一個iframe,並且出於某種原因不想讓它能夠調用你的腳本,那麼你可以通過javascript或者其他方式添加一些GET參數。但既然你對自己的iframe有很好的控制,這應該不成問題。

但是,當涉及到確定從瀏覽器到您的服務器的請求源於iframe或不在HTTP頭中沒有信息來透露這一點。唯一可能被通知的是如果該iframe來自託管在另一個域上的頁面。

但如果你有自己的網站上的iframe,沒有任何額外的參數添加到請求,並在其訪問您的腳本,然後通常從瀏覽器的窗口中的兩個請求看起來一樣在服務器上。

+0

我希望我的旋轉鏈接只能直接打開,不能在iframe,框架和對象中打開...... – 2013-03-13 19:57:48