2013-03-13 83 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