Максимальное количество разрешенных файлов cookie

Насколько мне известно в Google, максимальное количество файлов cookie зависит от браузера, однако я не могу найти последние данные о том, сколько файлов cookie разрешено в современных браузерах.

Мне нужно сохранить несколько большое количество пользовательских настроек в файлах cookie (для еще не зарегистрированных пользователей), так что было бы лучшим способом сделать это? (Кроме того, эти файлы cookie будут доступны как на стороне клиента, так и на стороне сервера php)

Из rfc :

  • не менее 300 файлов cookie

  • по меньшей мере 4096 байт на файл cookie (как измеряется размером символов, которые содержат нетерминал cookie в описании синтаксиса заголовка Set-Cookie)

  • не менее 20 файлов cookie на уникальный хост или доменное имя

Это минимальные требования. Команда IE6 этого не понимала. Все остальное имеет специфику браузера. Вам лучше написать тестовую платформу для тестирования каждого браузера. Проверяйте максимальный размер и количество с небольшими шагами (и проверьте, читаются ли они еще).

Кроме того, я, кажется, помню, что у apache возникла проблема с количеством файлов cookie. Не могу вспомнить, где я это видел.

Вот небольшой скрипт для проверки cookie: http://krijnhoetmer.nl/stuff/javascript/maximum-cookies/

Лучшим способом было бы не хранить их в cookie вообще.

Храните их в базе данных и храните ключ DB в файле cookie. Если это всего лишь несколько предпочтений, то безопасность не является проблемой.

Не забывайте, что куки будут отправляться с каждым запросом – если у вас есть 2kb данных cookie и загружается 10 изображений на странице, это дополнительные 22kb данных.

Количество файлов cookie:

  • Chrome 9 разрешил 180 куки-файлов на домен
  • Firefox 3.6.3 разрешил 50 файлов cookie для домена
  • Internet Explorer 8 разрешил 50 файлов cookie для домена
  • Opera 10 и 9 разрешили 30 файлов cookie для домена

Размер файла cookie Ограничения (4096 байт):

  • Firefox и Safari разрешают использование файлов cookie длиной до 4097 символов, это 4096 для имени и значения и одно для знака равенства.
  • Opera позволяет использовать файлы cookie длиной до 4096 символов, что соответствует знаку имени, значению и знаку.
  • Internet Explorer разрешает использование файлов cookie длиной до 4095 символов, что соответствует имени, значению и знаку равенства.

SRC: http://www.nczonline.net/blog/2008/05/17/browser-cookie- ограничения /

Я рассмотрел это сегодня, если вы хотите поддерживать большинство браузеров, то не превышать 50 куки на домен и не превышать 4095 байт на домен (т. Е. Общий размер всех файлов cookie <= 4095 байт)

Чтобы узнать больше об этом, вот тестовая страница и результаты .

IIRC, это 20 для большинства, больше для некоторых и 10 для одного конкретного браузера (опять же IIRC, IE5.5?). До 10 считается безопасным номером.

В любом случае вам не нужно больше одного – просто используйте его для хранения идентификационной клиентской части и храните все, что вам нужно, на серверной стороне от того же ID. Помимо чего-либо еще, чем меньше данных вы покидаете клиента, тем меньше их для удаления / коррумпирования / взлома / и т. Д.

Не уверен, какой смысл он делает с их точки зрения, но я видел веб-сайты в дикой природе , которые устанавливали более 450 куки и сообщали более чем 140 особым сторонним доменам .