是否阻止/阻止某些顶级域名(例如amazonaws.com)被用作cookie域?

jug*_*ats 5 cookies amazon-ec2

我们在EC2中运行一个简单的服务.我们正在测试使用域名".amazonaws.com"设置我们的cookie,但它无法正常工作.

正在设置cookie和域:

Content-Length:62
Date:Tue, 15 Apr 2014 10:26:55 GMT
Server:Apache-Coyote/1.1
Set-Cookie:test=alfie; Domain=.mycompany.com; Expires=Sun, 27-Apr-2014 00:13:35 GMT; Path=/
Set-Cookie:test2=alfie; Domain=.amazonaws.com; Expires=Sun, 27-Apr-2014 00:13:35 GMT; Path=/
Run Code Online (Sandbox Code Playgroud)

如果我们要求使用xxxx.yyyy.mycompany.com,则Cookie会显示在参考资料(Chrome工具)中,并在下一个请求中重新发送.

但是,如果我们要求使用主机xxxx.yyyy.amazonaws.com,则响应相同,但Cookie不会出现在Chrome工具中,也不会重新发送.

删除域(以便cookie使用完全限定的主机名)在两种情况下都能正常工作.

显然使用.amazonaws.com作为域名是一个坏主意,但我觉得它不起作用似乎很奇怪,因为它暗示这种限制是由Chrome以某种方式强制执行(和其他浏览器 - Firefox显示相同的行为).

或者它是我们遗失的其他基本东西?!

谢谢,阿尔菲.

Fre*_*ung 7

是.浏览器不允许您为他们认为是顶级域名的域设置cookie,例如您无法为.com设置cookie.

没有一条硬性规则可用于确定某个域名是否为顶级域名 - 这取决于他们允许注册的注册商,因此您只需要创建一个列表.

您可以在Firefox 源代码中看到Firefox认为是顶级域名的域列表.除此之外还有一堆亚马逊相关的东西.