在我的网站管理区域,我使用了非常简单的逻辑:
session_start(); ob_start();
if(!isset($_SESSION['user'])){
header("Location: login.php");
}
contents...
ob_end_flush();
是的,这是完美的工作,重定向到登录页面。但漫画的一点是,我可以看到index.php的内容(保护!!!)here 有什么问题?
答案 0 :(得分:8)
Abra kadabra
if(!isset($_SESSION['user'])){
header("Location: login.php");
die("GET LOST YO");
}
答案 1 :(得分:5)
在ob_end_clean
调用后添加exit
和header
,以防止进一步执行/输出:
if (!isset($_SESSION['user'])) {
header("Location: login.php");
ob_end_clean();
exit;
}
答案 2 :(得分:1)
您应该在IF中制作所有脚本内容。
session_start();
ob_start();
if(isset($_SESSION['user'])){
contents...
}
else {
header("Location: login.php");
ob_end_flush();