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

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

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

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
15
0
17 701
6
Перейти к ответу Данный вопрос помечен как решенный

Ответы 6

Лучше всего вообще не хранить их в файлах cookie.

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

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

Они также хранятся в базе данных, однако мы предполагаем, что будет достаточно большое количество посетителей, поэтому я чувствую некоторую тошноту из-за обработки базы данных, скажем, от 20 до 50 значений при каждом запросе страницы. Файлы cookie снимут хотя бы часть нагрузки.

pilsetnieks 12.11.2008 15:30

Вам нужно только вытащить их из базы данных для первого попадания, а затем поместить в сеанс.

Greg 12.11.2008 15:32

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

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

Ответ принят как подходящий

Из RFC:

  • минимум 300 файлов cookie

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

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

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

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

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

Из этого RFC и того же раздела, процитированного выше, последний абзац гласит: «Приложения должны использовать как можно меньше и как можно меньше файлов cookie, и они должны корректно справляться с потерей файла cookie». Это может быть лучший совет, чем беспокоиться о нарушении ограничений пользовательского агента.

Grant Wagner 13.11.2008 18:54

Когда вы говорите «20 файлов cookie на уникальный хост», вы имеете в виду 20 общих для субдоменов все или 20 на субдомен?

Pacerier 03.07.2012 16:55

@Berzemus, Гоша, я хотел +1 к вышеупомянутому комментарию, но понял, что это написал я ... Означает ли ваше «20 файлов cookie на уникальный хост» 20 на субдомен или 20 всего?

Pacerier 30.04.2014 19:55

Читая RFC, трудно быть уверенным, так как домены могут быть сопоставлены (a.b.com соответствует .b.com, но не b.com и т. д.). Не знаю, как это влияет на правило «20 файлов cookie на домен» и как разные браузеры реализуют это правило.

Berzemus 11.07.2014 12:04

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

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

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

  • Chrome 9 разрешил 180 файлов cookie на домен
  • 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://webdesign.about.com/od/cookies/f/cookies-per-domain-limit.htm и http://www.nczonline.net/blog/2008/05/17/browser-cookie-restrictions/

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

Другие вопросы по теме