【问题标题】:How to share cookies across multiple Apache Virtual Hosts如何在多个 Apache 虚拟主机之间共享 cookie
【发布时间】:2012-04-03 08:54:29
【问题描述】:

这个问题通常被表述为“如何在多个子域之间共享 cookie”,答案通常是这样使用前导点

setcookie( 'id', 0, time()+30*3600, '/', '.example.com' );

这意味着 cookie 可用于example.com 的所有子域。但是,我怀疑/ 路径添加了 all 子域必须在物理上位于同一棵树下的约束。 PHP documentation 状态

路径

cookie 可用的服务器上的路径。如果设置为“/”,cookie 将在整个域中可用。如果设置为 '/foo/',cookie 将仅在 /foo/ 目录和域的 /foo/bar/ 等所有子目录中可用。默认值是设置 cookie 的当前目录。

如果一个人有两个(Apache)虚拟主机设置了文档根目录,是否可以共享cookie,例如

  • www.one.example.com → /var/www/example1
  • www.two.example.com → /var/www/example2

【问题讨论】:

    标签: cookies lamp virtualhost


    【解决方案1】:

    是的,它会起作用。

    cookie 的路径段基于 URI。

    www.one.example.comwww.two.example.com 都有 / 作为 URI。 cookie 与虚拟主机解析到的位置没有任何关系。

    【讨论】:

      猜你喜欢
      • 2013-08-18
      • 1970-01-01
      • 1970-01-01
      • 2021-09-22
      • 1970-01-01
      • 2010-10-11
      • 2013-05-22
      • 2015-03-03
      • 2019-03-08
      相关资源
      最近更新 更多