使用header()来保护/保护页面是否安全?

时间:2014-08-07 16:01:49

标签: php authentication http-headers

真的很简单的问题。我可以用它来安全地屏蔽页面吗?

user-only-page.php:

if (isLoggedIn() == false) header('Location: login.php'); 

isLoggedIn()返回true或false,具体取决于用户是否登录。

  • 或者有没有办法忽略这个标题?
  • 我是否可以强迫exit;

1 个答案:

答案 0 :(得分:1)

header命令由浏览器而不是服务器执行,因此使用header依赖于用户浏览器与您的意愿同谋。

当页面发送到浏览器时,也会发送header指令后面的内容,因此用户可以访问剩余的内容。

使用php,您可以使用exit(或die)函数强制脚本结束。所以以下是好的做法:

if (isLoggedIn() == false) {
    header('Location: login.php');
    exit;
}