如何在PHPSESSID cookie中设置PATH?

时间:2012-03-27 08:00:25

标签: php cookies session-cookies

我的服务器上运行了很多项目,所有项目都使用PHP会话进行身份验证。

现在,由于PHPSESSID cookie将cookie路径设置为set-cookie头中的'/',因此该cookie在整个域中都可用,而我只需要它可用于当前应用程序。

因此,会出现以下问题:

登录到mysite.com/application-1的用户会自动登录

  1. mysite.com/application-2
  2. mysite.com/application-3
  3. mysite.com/application-4
  4. ...等

    那么,如何设置PHPSESSID cookie的路径?

2 个答案:

答案 0 :(得分:4)

默认情况下,会话cookie是使用当前路径创建的,直到您将其更改为在任何其他路径或'/'上保存cookie。

您可以告诉脚本将会话cookie保存在项目特定目录中。您可以使用session_set_cookie_params进行此操作。必须在session_start()

之前调用此方法
session_set_cookie_params(0,'/dirname'); 

答案 1 :(得分:2)

您只需为每个站点指定会话名称,它就会将会话彼此分开。

session_name("application-1");