webrebuild.org第四届年会——金秋四城联动

各浏览器中cookie限制

  Firefox(3.6) Opera(10.x) chrome(5.x) IE6 IE7/IE8
最多key个数 50个 30个 53个 20个 50个
key个数超出时 随机删除旧的 先进先出方式删除旧的
单key字节数 4097 4051 4051 4096 5072
单key字节超出时 不进行写入操作
总字节数限制 204850 4997 server端控制(见注2) 4096 10239
总字节超出后 不写入新的 400 Bad Request cookie无法读写
  • 注①:包括key及value,以及分号、等号
  • 注②:总字节数也受HTTP Server的设置影响;
    Apache用这2个参数调整:
    LimitRequestFieldSize 限制客户端发送的请求头的字节数 【默认 8190】
    LimitRequestLine 限制接受客户端发送的HTTP请求行的字节数【默认 8190】
    当cookie超出Server的设置大小后会出现400 Bad Request

结论:我们应该保证cookie key数量<=20,单key字节<=4000b,总字节数<=4000b
但我们应尽量减少cookie的大小,以获得最优页面加载速度。见"When the Cookie Crumbles

1 条留言