设置并检查登录cookie?

时间:2016-04-12 06:13:22

标签: php session cookies

我是PHP cookie和会话的新手。

我正在使用PHPauth项目,他们的一条指令让我感到困惑。从他们的维基(这里:https://github.com/PHPAuth/PHPAuth/wiki/Class-Methods),登录功能有注释:

  

注意:您需要获取返回的会话哈希并创建   会话cookie,该方法不适合你。

我不是在为PHPauth项目问这个问题,但是对于所有的身份验证,因为这是我不理解的。具体来说,是什么让会话安全?我是否需要根据数组给出哈希值?

Array (
    [error] => 
    [message] => You are now logged in. 
    [hash] => 2ec4b290cedd651cf1c20635a887dd7f7042dc54 
    [expire] => 0 
)

我的意思是,我可以设置一个cookie,但那又是什么?我如何知道该cookie是否对此特定登录有效?

谢谢!

1 个答案:

答案 0 :(得分:0)

当您在PHP中使用本机会话机制时,调用session_start()会自动发送必要的HTTP答案,以便向客户端创建包含会话ID哈希值的cookie(这就是为什么不应该输出任何输出的原因)在致电session_start() btw之前。)默认情况下,此cookie名称为" PHPSESSID",因此PHP首先检查在您请求页面时是否存在具有该值的哈希的cookie,如果是,则会再次继续您的会话。

当然,您也可以重命名默认会话cookie名称等。 您应该在这里查看PHP会话选项:http://php.net/manual/en/session.configuration.php

简而言之:通常没有必要将会话哈希保存在任何地方(出于安全原因你也不应,除非你有正当理由)并且PHP处理它自动。