0

我需要阻止访问者在 iframe 之外打开页面

例如

在浏览器上写入时:

www.sss.com/index.php

将开放

但是当写

www.sss.com/add_news.php

我需要重定向到主页

4

3 回答 3

3

由于 iframe 发出 GET 请求,因此实际上没有任何方法可以区分来自浏览器本身的 GET 请求和来自嵌入在页面中的 iframe 的请求。在这两种情况下,浏览器都会发出相同的 GET 请求。您可能会在“iframe”页面中编写一些 JavaScript 代码,以检测它是否已加载到顶部窗口中,如果没有则重定向。

从关于如何识别网页是在 iframe 内还是直接加载到浏览器窗口中的公认答案中?

使用窗口属性topself

<script type="text/javascript">
    if (top === self) {
        location = '/index.php';
    }
</script>
于 2012-12-27T20:53:56.363 回答
0

我建议您生成一些令牌,例如。“982h2jruhndjf92”,将其存储在服务器或 cookie 中,然后将其作为 GET 参数添加到帧内脚本中。

<iframe src="www.sss.com/add_news.php?token=982h2jruhndjf92" /> 

如果 url 提供相同的标记,则显示正确的视图,否则使用 header() 函数重定向用户。

于 2012-12-27T20:54:07.023 回答
-1

只使用 php 你可以用标题做到这一点

<?php

   header( 'Location: www.sss.com/index.php' ) ;

?>
于 2012-12-27T20:48:30.153 回答