标题重定向的安全性如何?据我了解,标题信息指示浏览器做什么。因此,如果标题位置设置为其他位置,浏览器是否仍然可以登陆初始页面?
if(!$loggedin){
header('Location: someotherpage.php')
}
如果有人(咳嗽)忘了在标题后面使用退出命令,有人还可以登陆该页吗?
答案 0 :(得分:8)
如果有人(咳嗽)忘了在标题后面使用退出命令,有人还可以登陆该页吗?
当然 - 而不是 land 在该页面上(他已经拥有),忘记exit()
意味着客户端仍然可以查看之后发出的任何数据线。在收到Location:
标头后,没有人可以强制客户端立即离开。这一行动完全是自愿的。
答案 1 :(得分:0)
是的,当然。这就是为什么在您希望避免显示非法信息的情况下,在重定向之后其他人应该遵循(或退出)的原因。如果使用自定义请求,他们可以轻松查看重定向请求后面的内容,这是一个相当标准的安全问题。
答案 2 :(得分:0)
是。有可能仍然登陆该页面,你不能强迫'位置'。如果页面抛出“已发送标题”错误,也可能“意外地”加载页面的其余部分。
优良作法是在发送exit;
后使用header('Location...')
。
请参阅PHP函数:headers_sent