允许的最大cookie数

pil*_*eks 12 javascript php cookies

谷歌搜索告诉我,最大允许的cookie数量在很大程度上取决于浏览器,但我找不到任何最近的数据,关于现代浏览器允许多少cookie.

我需要在cookie中存储大量用户首选项(对于尚未注册的用户),那么最好的方法是什么呢?(此外,这些cookie将通过javascript客户端和php服务器端访问)

Ber*_*mus 22

来自rfc:

  • 至少300个饼干

  • 每个cookie至少4096个字节(通过Set-Cookie标头的语法描述中构成cookie非终端的字符大小来衡量)

  • 每个唯一的主机或域名至少有20个cookie

这些是最低要求.IE6团队没有得到这个.其他一切都是特定于浏览器的.你最好编写一个测试平台来测试每个浏览器.使用很少的增量步骤测试最大大小和数量(并检查它们是否仍然可读).

另外,我似乎记得apache有大量cookie的问题.不记得我见过的地方了.

这是一个小小的cookie测试脚本:http: //krijnhoetmer.nl/stuff/javascript/maximum-cookies/

  • 从该 rfc 以及上面引用的同一部分中,最后一段说:“应用程序应该使用尽可能少、尽可能小的 cookie,并且它们应该优雅地处理 cookie 的丢失。” 这可能是比担心违反用户代理限制更好的建议。 (2认同)

Gre*_*reg 15

最好的方法是根本不将它们存储在cookie中.

将它们存储在数据库中,并将数据库密钥存储在cookie中.如果它只是一些偏好,那么安全性不是问题.

不要忘记每次请求都会发送cookie - 如果你有2kb的cookie数据并在页面上加载10个图像,那就是额外的22kb数据.


Dee*_*mas 6

饼干数量:

  • Chrome 9允许每个域180个Cookie
  • Firefox 3.6.3允许每个域50个cookie
  • Internet Explorer 8允许每个域50个cookie
  • Opera 10和9允许每个域30个cookie

Cookie大小限制(4096字节):

  • Firefox和Safari允许最多4097个字符的cookie,名称和值为4096,等号为1.
  • Opera允许最多4096个字符的cookie,用于名称,值和等号.
  • Internet Explorer允许最多4095个字符的cookie,用于名称,值和等号.

SRC:http://webdesign.about.com/od/cookies/f/cookies-per-domain-limit.htmhttp://www.nczonline.net/blog/2008/05/17/browser-cookie-限制/