【问题标题】:Cookieless Domain - Session Cookie? Explicitly set the domain property on the main site?无 Cookie 域 - 会话 Cookie?在主站点上显式设置域属性?
【发布时间】:2015-11-16 13:15:04
【问题描述】:

关于无 Cookie 域的两个问题(我已经阅读了十几篇关于无 Cookie 域的帖子,但有些答案似乎相互矛盾)。

我正在设置我的网站以提供来自无 Cookie 域的静态内容 - 使用子域和 .htaccess。我的页面有很多缩略图,我不希望每个图像请求都发送 cookie 信息。

在 htaccess 中,我有一个重写规则,它将我的所有流量定向到 www 域

RewriteBase /
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

我创建了一个 CNAME 记录 static.example.com 并将其指向 www.example.com。

我的图像请求现在指向 static.example.com,在 Firebug 中我正在查看 Net 选项卡。请求头显示 PHP Session Cookie PHPSESSID=....,响应头显示没有 Cookie。

第一个问题:

请求标头中有会话 cookie 是不可避免的,还是我也应该尝试摆脱它?所有请求都来自一个公共目录(及其子目录)。我应该做这样的事情吗?

RequestHeader unset Cookie
Header unset Cookie
Header unset Set-Cookie

更新我尝试将其放在 jpg 文件目录中的 .htaccess 中 - 但提供的图像没有阻止标题

第二个问题:

另外,我是否需要明确设置所有 cookie 的域属性? Docs 表示如果未指定域,则使用当前域作为默认域。我当前的域应该始终是 www,对吧?但是回复my last post,有人说

您需要为 www.example.com 明确设置所有 cookie,以便 它们不会在子域之间共享

查看我的 www.example.com cookie(在 firfox 中)设置时未指定域,它将“主机”显示为 www.example.com,但将“站点”显示为 example.com。它没有明确说明“域”是什么,并且这些 cookie 没有包含在来自 static.example.com 的请求中。

感谢您的帮助。 (如果我应该发布两个单独的帖子,请告诉我)

【问题讨论】:

    标签: php .htaccess cookies static-content


    【解决方案1】:

    在漫长的一夜之后,我发现了以下内容:

    最后,我不再显示会话 cookie。最后,我将所有 cookie 的域显式设置为 www.example.com 并将路径设置为“/”,一旦完成(正确),cookie 数据就不再位于所有文件请求的请求标头中。

    它可能在没有明确设置域的情况下工作。然而,这是最直接的路线,最终奏效了。

    【讨论】:

      猜你喜欢
      • 2016-04-20
      • 1970-01-01
      • 2013-11-19
      • 2020-04-11
      • 2011-03-04
      • 2011-11-19
      • 1970-01-01
      • 1970-01-01
      • 2011-12-23
      相关资源
      最近更新 更多