关于WEB开发时cookie大小限制的详解

 1、浏览器容许每一个域名所包含的cookie数:
  Microsoft指出InternetExplorer8增长cookie限制为每一个域名50个,但IE7彷佛也容许每一个域名50个cookie。
  Firefox每一个域名cookie限制为50个。
  Opera每一个域名cookie限制为30个。
  Safari/WebKit貌似没有cookie限制。可是若是cookie不少,则会使header大小超过服务器的处理的限制,会致使错误发生。
  注:“每一个域名cookie限制为20个”将再也不正确!

2、当不少的cookie被设置,浏览器如何去响应。
  除Safari(能够设置所有cookie,无论数量多少),有两个方法:
  最少最近使用(leastrecentlyused(LRU))的方法:当Cookie已达到限额,自动踢除最老的Cookie,以使给最新的Cookie一些空间。InternetExplorer和Opera使用此方法。
  Firefox很独特:虽然最后的设置的Cookie始终保留,但彷佛随机决定哪些cookie被保留。彷佛没有任何计划(建议:在Firefox中不要超过Cookie限制)。

3、不一样浏览器间cookie总大小也不一样:
  Firefox和Safari容许cookie多达4097个字节,包括名(name)、值(value)和等号。
  Opera容许cookie多达4096个字节,包括:名(name)、值(value)和等号。
  InternetExplorer容许cookie多达4095个字节,包括:名(name)、值(value)和等号。
注:多字节字符计算为两个字节。在全部浏览器中,任何cookie大小超过限制都被忽略,且永远不会被设置。

4、总结表格

IE6.0
IE7.0/8.0
Opera
FF
Safari
cookie个数
每一个域为20
每一个域为50
每一个域为30
每一个域为50个
没有个数限制
cookie总大小
4095个字节
4095个字节
4096个字节
4097个字节
4097个字节

IE内核浏览器占主流地位,且ie6仍占有至关大的市场份额,因此在程序中应当使用少于20个cookie,且不大于4k。
相关文章
相关标签/搜索