Cookies (Куки)

Что такое Cookies?

Cookies (куки) — это небольшие текстовые файлы, которые веб-сервер передаёт браузеру для сохранения на устройстве пользователя и последующей отправки обратно при каждом запросе к тому же домену, обеспечивая непрерывность сессии, аутентификацию и персонализацию.

Как это работает?

Протокол HTTP по своей природе не сохраняет состояние между запросами. Когда сервер отвечает на запрос, он добавляет в ответ заголовок Set-Cookie с парой ключ-значение и атрибутами. Браузер запоминает этот cookie и автоматически включает его в заголовок Cookie всех последующих обращений к указанному домену и пути. Атрибуты управляют сроком жизни (Expires, Max-Age), областью видимости (Domain, Path), безопасностью передачи (Secure — только HTTPS, HttpOnly — недоступен JavaScript) и политикой отправки в кросс-сайтовых сценариях (SameSite). Куки первого лица устанавливаются доменом, который пользователь посещает напрямую; сторонние куки — иными доменами, встроенными в страницу через iframe или скрипты, и с 2024–2025 годов они полностью блокируются браузерами Chrome, Firefox и Safari.

Метрики и стандарты

В 2026 году отраслевым ориентиром является жёсткое соблюдение браузерных ограничений: размер одного cookie-файла не должен превышать 4096 байт, общее количество кук на один домен — не более 180. Превышение этих лимитов ведёт к автоматическому удалению старых значений без уведомления, разрушая сессии и искажая данные аналитики. Удаление неиспользуемых кук сокращает размер HTTP-заголовков запросов, снижая время загрузки страницы до 100 мс на каждый серверный запрос. При внедрении Consent Mode v2 сайты сохраняют в среднем 65% конверсионных сигналов в режиме без явного согласия пользователя, тогда как полная блокировка всех кук без резервного режима приводит к потере до 30% атрибутированных транзакций.

Почему это важно для бизнеса?

Без кук невозможно реализовать корзину интернет-магазина, удержать аутентификацию пользователя после обновления страницы, идентифицировать возвращающегося посетителя в аналитике или запустить ремаркетинг. Корректно настроенные куки напрямую влияют на коэффициент конверсии: восстановление брошенной сессии через постоянный идентификатор сессии снижает количество ложных отказов и сохраняет до 15% потенциально утерянных заказов. Для соблюдения законодательства (GDPR, 152-ФЗ, CCPA) сайт обязан блокировать загрузку маркетинговых и аналитических кук до получения согласия, что требует точной инвентаризации всех устанавливаемых файлов и управления их активацией через Consent Management Platform.

Пример применения

Интернет-магазин на WooCommerce добавляет товар в корзину. WooCommerce создаёт куку woocommerce_items_in_cart и сессионные куки. При переходе на страницу оформления заказа корзина не теряется — клиент видит выбранные товары. Если куки заблокированы или истекли из-за превышения лимита домена, корзина оказывается пустой, что провоцирует отказ от покупки. Установка атрибута SameSite=Lax в конфигурации сервера предотвращает потерю сессии при кликах с внешних ссылок, но защищает от CSRF-атак.

Как это реализуется в WordPress?

Ядро WordPress автоматически устанавливает куки аутентификации (wordpress_logged_in_*), для экрана входа (wordpress_sec_*) и для комментариев (comment_author_*). WooCommerce добавляет сессионные куки корзины и недавно просмотренных товаров. Управление параметрами cookie-файлов на уровне сервера задаётся через константы в wp-config.php: COOKIE_DOMAIN, COOKIEPATH, COOKIE_SECURE (переопределение параметров через PHP-фильтр setcookie). Для соблюдения требований о согласиях применяются плагины: Complianz (сканирует все куки, формирует баннер и интегрируется с Consent Mode v2), CookieYes (GDPR Cookie Consent) и Borlabs Cookie. Разработчики могут динамически устанавливать собственные куки через PHP-функцию setcookie() в хуках init или wp_head, а для серверной загрузки внешних скриптов используют интеграцию с Google Tag Manager Server-Side, изолируя сторонние куки от клиента. Кеширующие плагины, такие как LiteSpeed Cache, позволяют гибко настраивать вариативность кеша в зависимости от наличия определённых кук, предотвращая смешивание персонализированных страниц разных пользователей.

Связанные понятия

  • Сессия (Session) — временное хранилище состояния на стороне сервера, идентифицируемое cookie с идентификатором сессии.
  • Local Storage — клиентское хранилище большего объёма (до 5 МБ), данные из которого не передаются автоматически в каждом HTTP-запросе.
  • Сторонние куки (Thirdparty cookies) — файлы, устанавливаемые доменом, отличным от посещаемого, ныне полностью блокируемые основными браузерами.
  • Consent Mode (Режим согласия) — механизм управления тегами Google в зависимости от статуса согласия пользователя, обеспечивающий сбор обезличенных данных без установки кук.
  • SameSite — атрибут cookie, регулирующий отправку файла в кросс-сайтовых запросах и предотвращающий атаки с подделкой межсайтовых запросов.
  • ЗаголовокSetCookie — HTTP-ответ, с помощью которого сервер передаёт браузеру новое значение и параметры куки.