同一域上的不同页面显示不同的 cookie(按目标域)
Different pages on same domain show different cookies (by target domain)
我有一个单点登录实现,可以在人们登录时向网站添加 cookie。我在查看一个页面时在 chrome 检查器中看到了 cookie,但在同一域的另一个页面中没有。
- cookie 路径设置为“/”,因此应该适用于所有文件
- 消失的 cookie 的目标域是另一个域
当我转到网站上的一个页面时,我看到很多 cookie(包括各种目标域)。
当我转到同一域中的其他页面时,我看到的 cookie 变少了(似乎都以本地域为目标)
使用 Apache、SSL、Ubuntu,它是一个子域,它是一个会话 cookie,在 url 中使用完全相同的 https 和 www,所有标准内容。
为什么同一域中的不同页面可以显示不同的 cookie,(在 chrome Inspector 中)?
显然这里的线索是 cookie 目标域,但为什么这是个问题?
只有在当前页面上下文中对这些域发出任何请求时,才会显示第三方 cookie。
假设您的域是 A
,并且您在浏览器中为域 B
设置了 cookie。
您的页面 1
嵌入了来自域 B
的 内容 - 可以是图像、脚本文件,... - 任何导致实际 HTTP 请求的内容到要创建的域 B
。然后您将在开发工具中看到域 B
的 cookie。
但是您的页面 2
没有嵌入来自域 B
的任何此类资源。来自 B
的 cookie 现在实际上“不涉及”此页面上发生的事情 2
- 因此当您在页面 2
上时,开发工具现在也不需要或没有理由显示它们.
我有一个单点登录实现,可以在人们登录时向网站添加 cookie。我在查看一个页面时在 chrome 检查器中看到了 cookie,但在同一域的另一个页面中没有。
- cookie 路径设置为“/”,因此应该适用于所有文件
- 消失的 cookie 的目标域是另一个域
当我转到网站上的一个页面时,我看到很多 cookie(包括各种目标域)。
当我转到同一域中的其他页面时,我看到的 cookie 变少了(似乎都以本地域为目标)
使用 Apache、SSL、Ubuntu,它是一个子域,它是一个会话 cookie,在 url 中使用完全相同的 https 和 www,所有标准内容。
为什么同一域中的不同页面可以显示不同的 cookie,(在 chrome Inspector 中)?
显然这里的线索是 cookie 目标域,但为什么这是个问题?
只有在当前页面上下文中对这些域发出任何请求时,才会显示第三方 cookie。
假设您的域是 A
,并且您在浏览器中为域 B
设置了 cookie。
您的页面 1
嵌入了来自域 B
的 内容 - 可以是图像、脚本文件,... - 任何导致实际 HTTP 请求的内容到要创建的域 B
。然后您将在开发工具中看到域 B
的 cookie。
但是您的页面 2
没有嵌入来自域 B
的任何此类资源。来自 B
的 cookie 现在实际上“不涉及”此页面上发生的事情 2
- 因此当您在页面 2
上时,开发工具现在也不需要或没有理由显示它们.