无Cookie域 - 会话Cookie?在主站点上明确设置域属性?

时间:2015-08-22 19:16:00

标签: php .htaccess cookies static-content

关于无Cookie域的两个问题(我已经在无Cookie域上阅读了十几个或更多帖子,但有些答案看起来很矛盾。)

我正在设置我的网站以使用子域和.htaccess从无Cookie域提供静态内容。我的页面有很多缩略图,我不希望每个图像请求都发送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会话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 cookies(在firfox中)时,它会显示" host"如www.example.com,但"网站"作为example.com。它没有明确说明"域"是的,并且这些cookie不包含在static.example.com的请求中。

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

1 个答案:

答案 0 :(得分:0)

经过漫长的一夜之后,我发现了这一点:

最后,我不再显示会话cookie。最后,我明确地将域名设置为www.example.com,并将路径设置为" /"对于所有cookie,一旦完成(正确),cookie数据就不再出现在所有文件请求的请求头中。

如果没有明确设置域,它可能有效。然而,这是最直接的路线并最终起作用。