-1

我有一个旋转链接,我不想让人们在 iframe 中打开它。

如何在 iframe 中停止 php 进程?

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

在 Firefox 和 chrome 中不起作用。我的链接是(已编辑)

4

2 回答 2

1

检查Access-control-allow-origin标头。

它允许您控制哪个域可以访问或构建您的脚本。

您可以在 3 个值之间进行选择:

  • 仅来自同一个域
  • 仅来自您创建的列表中列出的域
  • 来自任何人(通配符)
于 2013-03-13T09:45:45.900 回答
1

由于PHP从不在iframe中而是在服务器端执行,因此无法可靠地知道请求是否来自您网站上的iframe

如果您的意图(不太清楚)是确保人们不会将您网站的iframe放在另一个网站上,那么您可以检查请求的引用者等。但其中大部分都可以被欺骗。

由于评论而更新:

不幸的是,没有好的标准化方法可以可靠地获取此类信息。如果您自己的网站上有一个 iframe,并且由于某种原因不希望它能够调用您的脚本,您可以通过 javascript 或其他方式添加一些GET参数来做到这一点。但是由于您可以很好地控制自己的 iframe,这应该不是问题。

但是,在确定从浏览器到服务器的请求是否源自 iframe 时,HTTP 标头中没有信息可以披露这一点。您可能会被告知的唯一一件事是该 iframe 是否来自托管在另一个域上的页面。

但是,如果您在自己的站点上有 iframe,请不要在请求中添加任何额外参数并访问其中的脚本,然后通常从浏览器的窗口中,这两个请求在服务器上看起来是一样的。

于 2013-03-13T09:49:25.337 回答