无法为 Chrome 中的 "cloudfront.net" 设置 cookie?

Can't set cookie for "cloudfront.net" in Chrome?

今天发现一件奇怪的事:好像Chrome(46.0)对特定的URL设置了一些限制,比如cloudfront.net.

可以这样复现:

  1. /etc/hosts中添加两行:

    127.0.0.1cloudfront.net

    127.0.0.1 cloudfront.com

  2. 为本地服务器启动 Apache 或 Nginx

  3. 打开chrome,在地址栏输入cloudfront.net

  4. 运行 在控制台中如下语句:

    document.cookie = "test=test; expires=Thu, 01 Jan 2020 00:00:00 GMT;domain=cloudfront.com; path=/"

  5. 然后

    console.log(document.cookie)

可以看到document.cookie是空的,根本没有设置,很奇怪(见下图)

然而,当我重复上述步骤,但将 URL 从 cloudfront.net 更改为 cloudfront.com 时,一切都像魔术一样运行良好..(请参见下面的屏幕截图)

有没有人对此有任何想法?谢谢!

我在 Google 组 (https://groups.google.com/a/chromium.org/forum/#!msg/chromium-dev/Hs1838k68bw/z_h4EHVwAAAJ) 中问了这个问题。看起来 Chrome 确实对某些站点设置了一些限制:

https://groups.google.com/a/chromium.org/d/msg/chromium-dev/Hs1838k68bw/z_h4EHVwAAAJ