我是php的新手。我有一些愚蠢的php会话疑问如下:
session_set_cookie_params($params['lifetime'], '/folder1');
session_name('MYSITE_SID');
Q1)以上/folder1
意味着什么?将Cookie存储在' / folder1'?那么cookie在folder1下是否可见?
我们有以下网站:
www.mysite.com/folder1
www.mysite.com/folder2
Q2)我可以为同一网站的2个以上文件夹保留相同的session_name
吗?或者应该保留不同的会话名称?
注意:如果用户已登录'www.mysite.com/folder1
',他应该无法自动登录www.mysite.com/folder2
抱歉愚蠢的查询。但是我想学习。
答案 0 :(得分:2)
session_set_cookie_params
中的路径参数仅在请求的资源中存在路径时,服务器才会发送Cookie标头.Eg:
Set-Cookie: name=Nicholas; path=/blog
在此示例中,路径选项将匹配/ blog,/ blogroll等;以/ blog开头的任何内容都是有效的。因此,它不是关于整个网站的Cookie可见性,而是关于服务器设置Cookie的更多信息。请阅读this了解详情。
对于您的第二个问题,您应该在整个网站中使用相同的会话名称,因为我没有看到您需要更改它的实际原因恕我直言。最后,将网站的部分内容限制为用户更多地与AAA(身份验证,授权和会计)相比,而不是与会话相关。
祝你好运!