我正在尝试保护我的内容免受example.php文件的影响。因此,我需要禁止直接访问此页面以及任何未经我许可的iframe指向它。
我配置一个名为iframe.php的php文件,从example.com加载iframe。这就是我的方式:
示例代码.php:
<?php
session_start();
if(!isset($_SESSION['iframe']) || !isset($_GET['internal']) || $_SESSION['iframe'] != $_GET['internal'])
{
die("This page can be accessed just from within an iframe");
}
unset($_SESSION['iframe']);
?>
iframe.php的代码
<?php
session_start();
$_SESSION['iframe'] = md5(time()."random sentence");
?>
<iframe src="example.php?internal=<?php echo $_SESSION['iframe'];?>" width="500" height="100"></iframe>
效果很好。但是,当我点击iframe.php中的任何链接时,我将被重定向到其他页面。之后,我单击浏览器中的“返回”按钮并收到消息:“只能从iframe中访问此页面”。
请你回来后帮我保持页面完美运行吗?
感谢您的阅读。
答案 0 :(得分:0)
简单,你可以通过Javascript来实现。
if(window==window.top) {
// not in an iframe
}
答案 1 :(得分:0)
在具有iframe代码的文件中,只需设置php cookie:
<?php
setcookie("stackoverflow", 1);
?>
在您的php文件中添加代码:
<?php
if(isset($_COOKIE['stackoverflow'])){
echo "";
}
else{
die('Good Bye');
}
?>
最好的问候;)