Cookies файлы принцип работы на сервере. Политика использования файлов Cookie и похожих технологий. Что такое куки

Практически каждый пользователь Windows встречался с таким понятием как файлы cookie. Что это такое, зачем они нужны и почему их желательно чистить, читайте в рамках данной публикации.

Что такое куки

Куки (англ. Cookie) — это текстовый файл с данными, который записывается в браузер, сервером посещаемого вами сайта. Этими данными являются:

  • информация о логине и пароле;
  • индивидуальные настройки и предпочтения пользователя;
  • статистика посещений и т.д.

С помощью этих данных сайт, на который вы заходили, сможет идентифицировать вас. Происходит это следующим образом:

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

Главным параметром cookie является срок его действия. По умолчанию — это одна компьютерная сессия. Файлы удаляются по закрытию браузера. Если они имеют срок действия, то становятся постоянными, и удаляются по истечению срока действия или функцией очистки в браузере.

Зачем они нужны?

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

Также, благодаря cookies, сохраняются индивидуальные настройки аккаунта. Например, некоторые сайты предлагают добавлять в избранное, менять оформление, изменять интерфейс с помощью таких файлов со сроком действия.

Где хранятся cookie?

Файлы сохраняются в пользовательской папке. Для каждого браузера свой путь:

  • Opera C:\Users\Имя_Пользователя\AppData\Local\Opera Software\Opera
  • Google Chrome C:\Users\Имя_Пользователя\AppData\Local\Chromium
  • Яндекс.Браузер C:\Users\Имя_Пользователя\AppData\Local\Yandex\YandexBrowser
  • Mozilla Firefox C:\Users\Имя_Пользователя\AppData\Local\Mozilla\Firefox

Зачем чистить?

Время от времени файлы cookies желательно чистить. Кроме полезности, они могут доставить и некоторые неудобства:

  1. Они предоставляют быстрый доступ к вашим профилям без ввода логина и пароля. Если за компьютером окажется посторонний человек, он сможет получить доступ к вашим персональным данным.
  2. Кроме того, если посторонний человек окажется за вашим компьютером, по неочищенным файлам куки можно отследить историю передвижений по сайтам. Это плохо с точки зрения конфиденциальности.
  3. При неправильной обработке сайтом вашего куки файла, вы можете не войти в свой профиль, или же некоторые функции на веб сервисе будут некорректно работать.

Как очистить файлы cookie?

Приведу пример очистки для популярных браузеров:

  1. Opera. Ctrl+H → Очистить историю → Файлы cookie и прочие данные с сайтов.
  2. Google Chrome. Ctrl+H → Очистить историю → Файлы cookie, а также другие данные сайтов и плагинов.
  3. Яндекс.Браузер. Ctrl+H → Очистить историю → Файлы cookie и другие данные сайтов и модулей.
  4. Mozilla Firefox. Ctrl+Shift+Del → Куки.

Как отключить?

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

Для отключения в популярных браузерах:


Совет! Если в браузере вы видите уведомления: «должна быть разрешена работа с файлами cookie» или «попытка сохранить файл cookie заблокирована», значит ваш браузер не сохраняет куки по умолчанию. Откройте настройки и включите сохранение куки файлов.

Здравствуйте, уважаемые читатели блога сайт. Практически сразу любой начинающий интернетчик сталкивается с таким понятием как cookie. Что означает это загадочное слово? Почему их иногда чистят? Чем отличаются сторонние куки от прямых? Как их включить или выключить? А главное — зачем?

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

Что такое куки — мифы и реальность

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

Казалось бы, ну и что такого... Однако, большая часть сайтов работать без такой вещи как куки не смогут. Точнее смогут, но потеряют часть своего функционала.

Например, если для работы на сайте требуется авторизация , то вам при каждом переходе на новую страницу придется заново :

  1. Пользователь вводит имя и пароль в форму входа расположенную на сайте и отправляет их на сервер.
  2. Сервер получает их и проверяет на правильность, после чего отдает браузеру запрошенную пользователем страницу. Но вместе с ее кодом браузер получает cookie с идентификатором сессии. Как правило, они будут храниться в браузере какое-то время, в течении которого пользователь сможет работать с сайтом без повторной авторизации.
  3. При запросе других страниц сайта у сервера, браузер вместе с кодом запроса отправляет и куки с идентификатором сессии. Сервер проверяет идентификатор по своей базе и, при благоприятном стечении обстоятельств, отдает код запрашиваемой страницы.

А в интернет-магазине вы вообще ничего не сможете купить, ибо без cookie не будет работать «виртуальная корзина» для хранения покупок.

Что примечательно, разработка стандарта cookie началась именно для реализации корзины в пакете предназначенном для интернет коммерции. Происходило это в начале девяностых годов прошлого века авторами сейчас уже забытого всеми браузера Netscape. Потом стандарт пересматривался в связи с тем, чтобы попытаться ограничить использование куков для сбора личных данных о пользователях браузеров.

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

В общем, куки в большинстве случаев нужны и полезны. Но по-прежнему не утихают споры по поводу того, что сторонние куки создают угрозу приватности пользователя . Откуда берутся эти самые сторонние cookie и что это такое? Дело в том, что при загрузке (отрисовке) вебстраницы данные могут подгружаться не только с того сервера, где, собственно, расположен сайт, но и со сторонних серверов.

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

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

  1. Полное отключение куки.
  2. Очистка всех cookie при выходе из браузера.
  3. Запрет или ограничение на использовании сторонних куков
  4. Создание «белого» и/или «чёрного» списка сайтов, cookie с которых будут либо пропускаться, либо блокироваться.
  5. У некоторых браузеров имеется даже менеджер для очистки эти записей для отдельных сайтов.
  6. Установка ограниченных сроков истечения куки.

По поводу последнего пункта. Дело в том, что существуют записи cookie, которые сами удаляются при окончании вашего сеанса работы с тем или иным сайтом. Однако, у разработчиков сайтов есть возможность указать срок жизни эти записей, по истечении которого они будут почищены. Такие куки называются постоянными и именно об ограничении их срока жизни идет речь в последнем пункте. Хранятся они обычно в отдельном файле, который может называться cookies.txt.

Теперь давайте развеем несколько мифов, которыми обросли кукисы :

  1. Cookie идентифицируют не конкретного человека (вас), а отдельные браузеры. Открыв страницу того же самого сайта в другом браузере, вас попросят авторизоваться заново, ибо куков, говорящих о производимой ранее авторизации в данном обозревателе, не будет иметься. Если браузером пользуются несколько человек, то опять же эта технология не будет делать для них различия.
  2. Куки не являются программами (это обычный текстовый фрагмент), поэтому они не могут быть источниками заражения ваших компьютеров вирусами и сами вирусами тоже быть не могут.
  3. Также они не имеют ничего общего с всплывающими самопроизвольно в браузере окнами. Эти вещи отключаются в разных настройках обозревателя.

Теперь перечислим то, что действительно cookie могут делать :

  1. С помощью них можно отследить, какие именно страницы вы посещали, и срок хранения этих данных может быть весьма высок. Спецслужбы самой демократичной страны в мире когда-то обвинялись в использовании куков для слежки и получения конфиденциальных данных таким образом.
  2. Если трафик передаваемый с вашего компьютера в сеть интернет не шифруется, то злоумышленники могут его перехватить и в том числе прочитать cookie (перехватить или подменить). Чаще всего это происходит при использовании WiFi без шифрования.
  3. Cookie также могут устанавливаться программами на языках типа JavaScript, встроенными в текст страниц, или другими скриптами работающими в браузере (т.е. без получения этих данных с сервера).
  4. На данный момент у этой технологии есть альтернативные решения, но куки по-прежнему остаются оптимальным вариантом по совокупности имеющихся у них возможностей

Как почистить, включить или отключить куки?

Бывают случаи, когда нужно почистить cookie оставленные вами после сеанса пользования интернетом. Например, если вы авторизовались на каких-то сайтах, но при этом работали с чужого компьютера (в гостях, на работе, в интернет-кафе и т.п.). Если куки оставить, то другой пользователь вполне может войти на тот же сайт и попасть в ваш аккаунт, сам того не желая.

Кстати, на многих сайтах сейчас, при вводе логина и пароля, можно поставить галочку «Чужой компьютер», чтобы информация об авторизации не сохранялась в cookie. Ну и также во всех современных браузерах имеется режим «Инкогнито» или приватного путешествия по сети, когда на компьютере не остается никаких следов вашего пребывания.

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

  1. В (до версии 12.16) нужно выбрать из верхнего меню кнопки «Опера» пункты «Настройки» - «Общие настройки». В открывшемся окне перейти на вкладку «Расширенные», а затем выбрать в левом меню пункт «cookie ».

    Здесь можно включить и выключить прием куки вообще или только с посещаемого сайта (т.е. сторонние записи приниматься не будут). Тут же имеется и менеджер, который позволит удалить или изменить записи cookie для каждого из посещенных вами сайтов в отдельности.

    Если хотите просто почистить куки , то выбираете из верхнего меню Оперы пункты «Настройки» - «Удалить личные данные», а на открывшейся вкладке сможете почистить либо все cookie, либо только те, что было получены в последнем сеансе работы с браузером:

  2. В новой Опере (с номером версии выше 12.16) нужно будет из меню кнопки «Opera» выбрать пункты «Другие инструменты» - «Очистить историю посещений»:

    На открывшейся вкладке достаточно будет поставить галочку в поле «Удалить cookies и прочие данные сайта» и нажать на кнопку «Очистить» расположенную ниже:


  3. В и просто нажмите сочетание клавиш Ctrl+Shift+Delete , после чего в открывшемся окне поставьте галочку в поле «Удалить cookies и прочие данные сайта» и нажмите на кнопку «Очистить историю» расположенную ниже.

    Да, еще вы можете выбрать период времени, за который будут почищены куки описанным выше способом.

  4. В нужно будет нажать сочетание клавиш Ctrl+Shift+Delete, либо выбрать из верхнего меню кнопки «Firefox» пункты «Журнал» - «Удалить недавнюю историю».

    В открывшемся окне достаточно поставить галочку в поле «Куки », выбрать период, за который их нужно будет почистить, и нажать на кнопку «Удалить сейчас».

  5. В для очистки куков можно будет нажать уже знакомую нам комбинацию клавиш: Ctrl+Shift+Delete.

    Затем нужно поставить галочку в строке «Куки-файлы» и нажать на расположенную внизу кнопку «Удалить».

Удачи вам! До скорых встреч на страницах блога сайт

Вам может быть интересно

Как удалить почту и почтовый ящик на Mail.ru, Яндексе и Gmail
Инкогнито - что это такое и как включить режим инкогнито в Яндекс браузере и Гугл Хроме
Как удалить канал или видео с Ютуба?
История поиска и просмотров в Яндексе - как ее открыть и посмотреть, а при необходимости очистить или удалить Как удалить свою страницу на Одноклассниках Как удалить или временно отключить свою страницу в Facebook Как создать или удалить группу, либо страницу во вконтакте - как удалить паблик в ВК
Как удалить сообщение и всю переписку в Скайпе, можно ли изменить логин и удалить аккаунт Skype
Регистрация и вход на свою страницу в Контакте - что делать если войти в ВК не получается
Как удалить страницу в Вконтакте, а также избавиться от удаленных страничек в Друзьях Официальный сайт - как найти оф сайт через поисковую системы

Мне не хочется забивать вам голову техническими подробностями, поэтому я кратко скажу, что такое Cookies и, нет, не с чем их едят, а как с ними нужно работать.

Представим, что перед нами поставлена такая задача: нужно написать индивидуальный счетчик посещения для каждого клиента сайта нашей компании. То есть, чтобы пользователь знал, сколько раз именно он был на нашем сайте, а не видел общее количество посещений.

Можно решить данную задачу двумя способами. Первый способ заключается в том, чтобы вести учет по IP -адресу. Для этого нужна база данных, состоящая всего из одной таблицы, структура которой примерно такова:

Посещения

111. 111.111.111

Когда пользователь заходит на наш сайт, нам нужно определить его IP , найти в базе данных информацию о его посещениях, увеличить счетчик на единицу и вывести его в браузер. Определять IP-адрес клиента мы уже сумеем (переменная $REMOTE_ADDR), поэтому нам несложно написать такую программу. Однако при использовании данного способа рано или поздно «всплывут» две проблемы:

Для каждого IP -адреса нужно будет вести учет в одной таблице, которая, скорее всего, будет большой, а из этого следует, что мы нерационально используем процессорное время и дисковое пространство. Гораздо правильнее с нашей стороны будет использовать это пространство с большей пользой.

У большинства домашних пользователей IP -адреса динамические. То есть, сегодня у него адрес 111. 111.111.111, завтра -- 111.111.111.118. И попробуй потом определить, кто есть кто. Можно ввести регистрацию с использованием

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

Ясное дело, что данный способ нам не поможет. Остается использовать второй способ, который намного легче в реализации. Мы устанавливаем Cookie - переменную, которая будет храниться на диске у пользователя. Эта переменная и будет хранить информацию о посещениях. Она будет считываться сценарием при обращении пользователя к серверу. Выгода очевидна. Во-первых, нам не нужно хранить ненужную информацию о IP -адресах, во-вторых, нам не страшны динамические IP -адреса, поскольку данные о своих посещениях хранятся у клиента.

Теперь нам ясно, для чего используются Cookies - для хранения небольшой по объему информации у клиента, например, его логина (но ни в коем случае не пароля!), настроек сайта (цветовая гамма, язык, и т.д.) и другой информации.

Почему небезопасно хранить пароль в Cookies ? Получив от сервера Cookie - переменную, браузер сохраняет ее на диске в открытом виде, то есть, не кодируя ее. Любой, кому не лень, может просмотреть значения этой переменной. Кроме того в некоторых браузерах Cookies вообще сохраняются в обыкновенном тектовом файле, а некоторые - даже позволяют просмотреть их. Например, в браузере Mozila для просмотра

Сооkies выполните команду меню Edit-Preference-Security-Cookes

В этом разделе ны можете включить (Enable) или отключить (Disable ) прием Cookies, установить максимальный срок хранения Cookie (Limit maximum lifetime) :

Current session (Текущая сессия) - переменная будет удалена по окончании сессии работы с сайтом (например, когда пользователь закроет окно сайта).

Установить определенное количество дней, по истечении которых все принятые Cookies будут удалены.

Нажмите кнопку Manage Stored Cookies . Появится окно с информацией обо всех установленных Cookies

Щелкните на имени установленной Cookie -переменной, чтобы получить информацию о ней:

Name - имя переменной;

Information - информация, которую содержит Cookie;

Host - узел, установивший переменную;

Secure Server - признак того, что Cookie должна передаваться через защищенное (HTTPS ) соединение:

Expires - время жизни Cookie . Значение at end of session означает, что Cookie будет «жить» до конца сессии.

Кнопка Remove Cookie удаляеттекущую переменную, а кнопка Remove All Cookies удаляет iscc Cookie -переменные.

Вы часто покупаете товары в Интернет-магазинах? Тогда рекомендую время от времени (скажем, раз в месяц) удалять все Cookies . Зачем? Вы увидите, что цены станут ниже. Дело в том, что некоторые Интернет-магазины (особенно, «буржуйские») грешат на доверии клиентов. Пару раз они могут продать вам товар по заниженным пенам, затем вы, зная, что это самый дешевый в Интернете магазин, будете покупать товары только у них. А они как раз и воспользуются Cookies - будут сознательно завышать цены на все товары, когда вы в очередной раз будете делать покупку, уверяя себя, что экономите деньги. При этом с помощью Cookies Интернет-магазины будут определять, кто вы такой и что вы раньше покупали.

Однако не нужно совсем отключать Cookies . Некоторые сайты станут загружаться некорректно. Если вы боитесь, что через Cookies можно получить вирус, то не беспокойтесь: даже если кто-то передаст вам с помощью Cookies «вредный код», то система не сможет его запустить, так как Cookies хранятся в текстовом виде (а в Linux для Cookies не устанавливается право за запуск файла).

Перед тем, как начать работу с Cookies , позволю себе пару замечаний относительно выбора браузера. Для отладки ваших сценариев, если они используют Cookies , я рекомендую использовать браузер Mozilla , поскольку он позволяет эффективно управлять Cookies . Если этот браузер вас почему-то не устраивает, используйте Konqueror , который также позволяет просмотреть подробную информацию о полученных Cookies . Браузеры Internet Explorer версий 4 и 5 не позволяют этого сделать.

2 . Программирование Cookies

Установка Cookies

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

namе - задает имя (строка), закрепленное за Cookie .

value - определяет значение переменной (строка).

expire - время жизни переменной (целое число). Если этот параметр не указан, Cookie будет «жить» до конца сессии, то есть до закрытия браузера. Если время указано, то, когда оно наступит, Cookie самоуничтожится.

path - путь к Cookie (строка).

domain - домен (строка). В качестве значения устанавливается имя хоста с которого установили.

secure - передача через HTTPS -соединение.

Обычно используются только три первые параметра. В листинге 4 приведены несколько примеров установки Cookies .

Листинг 4. Примеры установки Cookies

/./ До конца сессии

SetCookie("Test","Value");

.// Время жизни - один час после установки

SetCookie("My_cookie", "One hour",time()+3600); ?>

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

невозможна: Warning: Cannot add header information - headers already sent by (output started at /var/www/html/cookie.php: 2) in /var/www/ html/cookie.php on line 4

Чтение значений Cookies

Получить доступ к Cookies достаточно просто. Все они хранятся к переменной окружения НТТР_СООК1Е . Если мы установили несколько Cookies , то в переменной НТТР_СООК1Е они будут перечислены через «;» (через точку с запятой). Например: mycookiel=valuel;mycookie2=value2.

Для чтения значения Cookies можно обращаться к ним, как к обыкновенным переменным. Например: echo $Test ; Только не забудьте проверить существование переменной. В заключение приведу пример «индивидуального счетчика» посещений. Код сценария приведен в листинге 5.

Листинг 5. Индивидуальный счетчик с помощью Cookies

// Если переменная не существует, объзляем ее if (! isset(51na Counter); $lnd Counter = 0;

// Увеличиваем счетчик

/* Устанавливаем Cookie которая будет жить до переустановки пользователем Windows, то есть очень долго. Если вам интересно, то браузер удалит ее 18/07 ,-"2 9 08:49 */

SetCookie ("Jnd_ Counter", $ I na_ Counter, Ox6FFFFFFF) ; echo "Вы посетили этот сайт $Ind_Counter раз"

Выше я говорил, что перед установкой Cookies нельзя использовать оператор echo . Только что я сам допустил подобную ошибку. Если оператора echo и вашей программе нет (по крайней мере до вызова SetCookie() ), a Cookies невозможно установить, убедитесь в том, что символы маркера начала программы -

Начало сайта

Естественно, что символ \n я не увидел, а PHP «подумал», что это фрагмент HTML -документа. В результате Cookies не были установлены, так как Cookies устанавливаются при формировании заголовка документа, а после первого вывода сценария формирование заголовка прекращается.

Наверняка в процессе пользования интернетом вам встречался термин cookies. Что это такое? По сути, куки представляют собой файл или несколько небольших файлов, в которых хранится текстовая информация. Создаются они, когда вы посещаете сайты, поддерживающие данную технологию.

Как работают cookies?

Всё очень просто. Как только браузер получает у сайта определённую веб-страничку, связь между ним и вашим ПК разрывается. Если вы решите перейти на другую страничку того же ресурса или обновить текущую, будет установлено новое соединение. На сайтах, где отсутствует авторизация пользователей, это не создаёт никаких проблем. Но если она необходима, без дополнительных мер ресурс не способен “запомнить” посещающих его людей и отобразить информацию в соответствии с предпочтениями каждого из них. Избежать ситуации, при которой, перемещаясь между разными страницами сайта, человек не воспринимается сервисом как новый, неавторизованный посетитель, помогают cookies. Что это текстовая информация, вы уже знаете. А работают куки очень просто: когда вы переходите с одной странички на другую, сервер посылает компьютеру запрос на данные из cookies. С помощью них он узнаёт, кто собирается выполнить такое действие, а затем на основе полученной информации удовлетворяет запрос или отказывает. Применяются cookies и при создании интернет-магазинов. Именно благодаря ним может существовать привычная нам корзина, в которой хранятся данные о выбранных, но ещё не оформленных товарах. И именно куки позволяют указанным товарам не исчезать из неё, пока вы просматриваете другие части каталога и оформляете заказ.

Чем полезны cookies?

Вы уже знаете о нескольких аспектах использования cookies. Что это такое, мы также успели выяснить. Теперь поговорим о том, чем ещё может быть полезна данная технология и в каких случаях без неё не обойтись.

Наверняка вы знаете, что сейчас на многих сервисах действуют так называемые "партнёрские программы". Практически все они являются долгосрочными и действуют месяцами или даже годами. На протяжении всего этого срока на жестком диске хранится информация, благодаря которой партнёр получит свой процент, если перешедший по его ссылке пользователь закажет у продавца услугу либо товар.

При работе со счётчиками посещений, системами подсчёта рейтинга и голосований также применяются cookies. Что это даёт в данном случае? Куки необходимы для того, чтобы система могла определить, что данный пользователь уже переходил по ссылке либо оставлял свой голос. То есть появляется некая страховка от искусственных накруток. Существуют способы обойти такую защиту, однако для обычных пользователей этого результата более чем достаточно.

Чего стоит опасаться?

Работая с cookies, важно помнить, что в некоторых случаях безобидная на первый взгляд текстовая информация может нести опасность.

Куки являются одной из наиболее важных потенциальных причин нарушения приватности в сети. Почему это происходит? Рекламные сайты всегда отслеживают, какую рекламу просматривает тот или иной пользователь. В cookies сохраняются данные о том, какие объявления человек уже видел, отследить, какие темы интересны для него. И пока речь идёт о cookies для отдельного сайта, об утечке личной информации говорить не приходится. Но вот если речь идёт о крупных рекламных сетях, коды которых присутствуют на подавляющем большинстве ресурсов, всё становится сложнее. Так, благодаря системе может собрать практически всю информацию о деятельности человека в сети. А если на каком-то сайте он вводит своё имя и фамилию, появляется возможность связать все эти действия с реальным человеком.

Есть и другие проблемы, связанные с cookies. В основном сталкиваются с ними программисты, которые прописывают код document. cookies для разных сайтов. Не ознакомившись предварительно с профессиональными источниками, можно допустить, чтобы в cookies хранились логины и пароли от сайта. В итоге их становится очень просто изъять и воспользоваться в своих целях. Однако практически все более-менее серьёзные сайты хранят пароли и логины в базе данных на сервере. Куки же тут применяются просто в качестве условного идентификатора для пользователя. Причём выдаётся таковой лишь на небольшой промежуток времени. То есть даже если хакеру удастся получить доступ к cookies, никакой ценной информации он там не найдёт.

Как включать, отключать и очищать cookies?

Если вы решили отключить cookies, учтите, что вам придётся снова включать их каждый раз, когда вы будете переходить на сайт, где это требуется.

Для Mozilla Firefox. Заходим в “Инструменты”. Далее следует отыскать пункт “Настройки”, а в нём - вкладку “Приватность”. Напротив Firefox в рамке “История” нужно выбрать из списка пункт “не запоминать”.

Для Google Chrome. Открываем “Параметры”, нажав на кнопку в виде После этого переходим в "Расширенные" -> "Настройки содержания". В появившемся окошке нужно выбрать пункт Cookie, а затем отметить пункт, запрещающий сохранение сайтами данных.

Как видите, отключить или снова включить cookies в Chrome и Mozilla Firefox, самых популярных браузерах, очень просто. В других обозревателях это делается тем же образом, с помощью вкладок “Безопасность”, “Приватность” и т. д.

Если вам нужно очистить cookies, быстрее и проще сделать это не с помощью стандартных средств браузера, а воспользовавшись специальной утилитой - cCleaner. Перед очисткой нужно закрыть все браузеры, иначе удалить все куки не получится.

А вообще оптимальный вариант - установить одну из программ, автоматизирующих работу с cookies. Сейчас таких приложений существует огромное количество, весят они совсем немало и избавляют пользователей от необходимости постоянно менять параметры вручную.

Cookie (куки, печенье) - это небольшой объем именованных данных(в текстовом виде), сохраняемых браузером и связанных с определенной WEB- страницей или WEB- сайтом. Cookies играют роль памяти веб браузера, чтобы сценарии и программы на стороне сервера могли на одной странице работать с данными, введенными на другой странице, или чтобы браузер мог вспомнить пользовательские параметры или другие переменные состояния, когда возвращается на страницу, посещенную им ранее. Cookies первоначально предназначались для разработки серверных сценариев и на низшем уровне реализованы как расширение протокола . Данные cookie автоматически передаются между веб броузером и веб сервером, так что серверные сценарии могут читать и записывать значения cookie, сохраняемые на стороне клиента.

Cookie описаны в RFC 2965. Cookie файлы рассчитаны на то, чтобы изредка сохранять небольшие объемы данных. Они не являются универсальным средством взаимодействия или механизмом передачи данных, поэтому следует проявлять умеренность при их использовании. Спецификации RFC 2965 рекомендуют производителям браузеров не ограничивать число и размеры сохраняемых cookie файлов. Однако ограничения могут существовать:

    Всего куков может быть не более 300 штук (300 пар имя-значение). При превышении лимита самые старые файлы перезаписываются.

    Размер одной куки не может превышать 4кб. При превышении самые старые байты перезаписываются.

    От одного домена (второго уровня, включая поддомены) может быть установлено не более 20 куков.

    Для конкретного сайта будут доступны только те куки, которые им и были установлены.

Атрибуты cookie

    Атрибуты cookie: expire, max age, path, domain и secure.

Помимо обязательного имени(name) и значения(value) каждый cookie имеет несколько необязательных атрибута, управляющих временем его жизни, видимостью и безопасностью.

    expire - по умолчанию cookies являются временными(сеансовыми) – их значения сохраняются на период сеанса Веб- браузера и теряются при закрытии сеанса пользователем. Чтобы cookie сохранялся после окончания сеанса, необходимо сообщить браузеру, как долго он должен храниться. Изначально для этого использовался атрибут expire, указывающий дату окончания действия cookie. Значение expire (RFC 2616) записывается в формате "Wdy, DD Mon YYYY HH:MM:SS GMT". Если этот атрибут не задан, то cookie хранится в течение одного сеанса, до закрытия браузера.

    max age - аналогичен атрибуту expires, но срок хранения определяется в секундах (RFC 6265). Значение десятичное не - отрицательное целое число. По истечении заданного времени клиент должен отказаться от куки. Значение ноль означает, что от cookie нужно отказаться немедленно.

Установка значения любого из этих атрибутов(expires, max age) заставляет браузер сохранить cookie в локальном файле, чтобы он мог быть прочитан при следующем посещении пользователем веб страницы. После того как будет достигнута дата окончания действия expires или истечет период max age, браузер автоматически удалит cookie файл.

    path - задает веб страницы, с которыми связан cookie. По умолчанию cookie связывается с создавшей его веб страницей и доступен этой же странице, а также любой другой странице из того же каталога или любых его подкаталогов. Если, например, веб страница http://www.example.com/catalog/index.html создает cookie, то этот cookie будет также видим страницам http://www.example.com/catalog/order.html и http://www.example.com/catalog/widgets/index.html , но не видим странице http://www.example.com/about.html . Этого правила видимости, принятого по умолчанию, обычно вполне достаточно. Тем не менее иногда значения cookie файла требуется использовать на всем многостраничном веб сайте независимо от того, какая страница создала cookie. Чтобы это можно было сделать, для cookie файла задается значение path(path=/;). Тогда любая страница того же веб сервера, содержащая указанное значение в своем URL , сможет использовать cookie файл.

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

    secure - это логический атрибут с именем secure, определяющий, как значения cookie файла передаются по сети. По умолчанию cookie не защищен, т. е. передается по обычному незащищенному HTTP соединению. Однако если cookie помечен как защищенный, он передается, только когда обмен между броузером и сервером организован по протоколу HTTPS или другому защищенному протоколу. По умолчанию принимает значение false.

Cookie определяются тройкой параметров имя-домен-путь (name-domain-path). Т.е cookie- файлы с разными путями или доменами являются разными cookie, даже если имеют одинаковые имена. Соответственно, cookie меняется на новое, только если новое cookie имеет те же имя, путь и домен. В остальных случаях новые значения cookie добавляются к старым.

Cookies могут быть установлены в браузер (или иной другой программе) двумя способами:

    при помощи протокола Методы и структура протокола HTTP в котором предусмотрены два параметра (заголовка) Set-Cookie (сервер указывает принять куку) и Cookie(ответ браузера). Кроме пары имя/значение(name=newvalue), куки может содержать срок действия, путь и доменное имя. Эти атрибуты должны идти после пары name=newvalue и разделяться точкой с запятой. Например:

Set-Cookie: name=newvalue; expires=date; path=/; domain=.example.com. или Set-Cookie: RMID=732423sdfs73242; expires=Fri, 31 Dec 2010 23:59:59 GMT; path=/; domain=.example.net

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

cookie (HTTP и/или PHP)

    setcookie - значение cookie перед отправкой клиенту подвергается URL - кодированию. При обратном получении значение cookie декодируется и помещается в переменную, с тем же именем, что и имя cookie. Если вы не хотите, чтобы значения кодировались, используйте функцию setrawcookie()

    setrawcookie - посылает cookie не преобразовывая значение, в остальном полностью аналогична функции setcookie

Cookies являются частью Методы и структура протокола HTTP - заголовка, поэтому setcookie() должна вызываться до любого вывода данных в браузер. Это то же самое ограничение, которое имеет функция header() . Вы можете использовать функции буферизации вывода, чтобы задержать вывод результатов работы скрипта до того момента, когда будет известно, понадобится ли установка cookies или других заголовков.

Любые cookies, отправленные серверу браузером клиента, будут автоматически включены в суперглобальный массив $_COOKIE, если директива variables_order содержит букву "C".

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

    Установка. Простая установка SetCookie("Name","Value")

    Массивы cookies.

    Setcookie("mycookie1["id"]", "value_id"); setcookie("mycookie1["lang"]", "value_lang");

    Значение cookie не доступно в массиве $_COOKIE в пределах того самого запроса, в котором cookie установлен. Другими словами, функция setcookie() не изменяет значения массива $_COOKIE. Однако при всех последующих запросах каждый установленный ранее cookie помещается в массив $_COOKIE.

Для назначения нескольких значений одной cookie, добавьте к её имени. Например: setcookie("MyCookie", "Test", time()+3600);

При успешном завершении функция setcookie() возвращает TRUE. Однако, это не означает, что клиентское приложение (например, браузер) правильно приняло и обработало cookie. То есть по поведению функции setcookie НЕльзя определить включены ли куки в браузере клиента.

    Чтение . if (isset($_COOKIE["lang"])) { print "Кука".$_COOKIE["lang"]." существует."; }

    Чтобы вывести на печать имена и значения всех cookies, посланных в текущем запросе, выполните цикл по массиву $_COOKIE:

    Foreach ($_COOKIE as $cookie_name => $cookie_value) { print "$cookie_name = $cookie_value
    "; }

    Изменение . Если cookie принимает новое значение при имеющемся уже в браузере cookie с совпадающими параметрами name, domain и path, то старое значение заменяется новым. В остальных случаях новые значения cookie добавляются к старым.

    Удаление . Нужно указать только имя куки, например SetCookie("Name"). Это приведет к удалению установленной куки с именем "Name" - это официальная рекомендация по удалению куки.

    Работающий пример удаления и установки куки при помощи PHP : "; } else { setcookie("my_cook", "My name is John", time() + 60 * 60 * 24); echo "Cookie установлена пользователю." . "
    "; } var_dump($_COOKIE); ?>

Непонятные Cookies: _utma, _utmb, _utmc, and _utmz

Иногда, при проверке установленных Cookies можно увидеть переменные с непонятными названиями: _utma, _utmb, _utmc. Эти куки устанавливает Google Analytics. Краткое знакомство с переменными Cookies от Google Analytics

    Utma – выдается при первом посещении сайта.

    Utmb – переменная отслеживает время посещения сайта. При каждом заходе на страницу отмечает “переход”. Время жизни по умолчанию 30 минут.

    Utmc – отслеживает закрытие браузера пользователем. Если при повторном заходе кука отсутствует, засчитывается новое посещение, независимо от _utmb

    Utmv – переменная используется для установки “собственной” пользовательской переменной

    Utmx – переменная нужна для Website Optimizer. Время жизни у куки _utmx – 2 года.

Более подробную информацию о переменных можно узнать в документации Google Analytics.


Top