Cookies* — это небольшие порции текста, которые веб-серверы могут передавать на компьютер пользователя. Они записываются в специальные файлы и в будущем могут передаваться обратно серверу. Сегодня у многих пользователей сложилось отрицательное отношение к cookies. Общепринятым стало мнение, что «печенье» (а именно так и переводится этот термин с английского) несет угрозу анонимности и безопасности пользователя. Естественно, подобные обвинения в адрес cookies нельзя назвать совсем уж беспочвенными.
Тем не менее, эта технология нужна — в первую очередь, для обеспечения удобства интернетчиков.
На компьютере пользователя cookies хранятся в виде файлов в специальной папке (в Windows 98 — \Windows\Cookies, в Windows 2000/XP — \Documents and Settings\имя_пользователя\Cookies). Каждому сайту соответствует собственный файл. Кроме того, на cookies наложены определенные ограничения. Во-первых, каждый сервер может записывать и считывать информацию только из «своего» файла. Во-вторых, его размер не может превышать 4 кб. А в-третьих, в каждом файле не может содержаться более 20 записей.
С помощью cookies можно реализовать эмуляцию сессии при соединении с сервером по HTTP-протоколуОдной из главных проблем протокола HTTP* является непостоянство соединения между клиентом и сервером. С этим сталкиваются разработчики всех более-менее серьезных сайтов. Суть проблемы заключается в следующем. Компьютер пользователя отправляет на веб-сервер HTTP-запрос на загрузку одного файла. Сервер, обработав его и выполнив нужные действия, тут же прерывает сеанс. В результате следующий запрос от того же компьютера на загрузку другого файла будет расцениваться как соединение с новым пользователем. На первый взгляд, особой проблемы тут нет, но самом деле... На самом деле, сложности возникают со всеми веб-сайтами, требующими авторизации пользователя. Ведь в этом случае при запросе нового файла, то есть при переходе почти по каждой ссылке, интернетчику придется каждый раз вводить свое имя и пароль. А это, согласитесь, не очень удобно.
Для того чтобы решить эту проблему, используются cookies. Осуществляется это следующим образом. При первой авторизации пользователя сервер передает браузеру клиента определенную информацию в виде cookies. При этом устанавливается так называемое «время сессии», то есть время, в течение которого данные будут храниться на компьютере пользователя. Обычно это какой-то небольшой период. После этого у каждого запроса, посылаемого клиентом серверу, в специальной переменной окружения HTTP_COOKIE будет содержаться информация из cookies. Таким образом сервер «вспомнит» интернетчика и не потребует от него ввода пароля. Кроме того, при получении любого запроса от данного клиента сервер должен переписать cookies, то есть как бы «обнулить счетчик» времени сессии.
С помощью cookies можно реализовать автоматическую авторизацию зарегистрированных на сайте пользователейНо использование cookies для эмуляции сессии — только одно из возможных применений этой технологии. Существует у нее и другая весьма привлекательная возможность для разработчиков. Дело в том, что если не задавать время хранения информации, cookies будут храниться всегда, а точнее, пока их не удалит сам пользователь. Этим фактом можно воспользоваться для самых разных целей. Так, например, довольно часто встречается «автоматический вход» зарегистрированных пользователей. В этом случае веб-сервер записывает в cookies логин и пароль этого человека, ничем не ограничивая срок их хранения. После этого при каждом обращении к сайту необходимые для авторизации данные будут передаваться автоматически, без участия человека. Естественно, это очень удобно. Но нужно обязательно учитывать, что подобные решения хороши только на тех проектах, на которых нет нужды особенно заботиться о безопасности пользователей, например, на форумах. Проблема заключается в том, что любой человек, севший за данный компьютер, сможет получить доступ к приватной информации владельца ПК.
И, наконец, третье наиболее распространенное использование cookies — это сбор информации об интернетчиках в маркетинговых целях. Обычно с помощью «печенья» отслеживают перемещение интернетчика по сайту. Именно благодаря данным о маршрутах движения посетителей, собранным таким образом, и совершенствуется структура веб-проекта.
Cookies очень активно используются в интернет-маркетингеКроме того, в последнее время рекламный бизнес в Интернете идет вперед буквально семимильными шагами. Причем рекламодатели сегодня требуют точной оценки эффективности своих расходов. И для этого тоже используются cookies. Дело в том, что некоторые системы имеют возможность с помощью «печенья» отслеживать движение интернетчиков по разным сайтам. На первый взгляд, это невозможно из-за ограничений, наложенных разработчиками, но... Есть очень простой выход. Практически на каждом сайте в Интернете есть счетчики посещений. Причем все эти счетчики обращаются к своим базовым серверам. Так что же может помешать этим серверам записывать и считывать данные из cookies при обращении клиента к разным веб-проектам? Кстати, подобное использование cookies нарушает права человека, а поэтому в прошлом году в парламенте Евросоюза серьезно рассматривался вопрос о запрете этой технологии.
Ну, а напоследок хочется отметить, что cookies были предназначены, в первую очередь, для обеспечения удобства посетителей различных сайтов. Но, как и любую другую технологию, «печенье» можно использовать и с различными неблаговидными целями. Тем не менее мнение о cookies, как о главном нарушителе безопасности и анонимности людей в Интернете, явно не соответствует действительности. Конечно, доля правды в этом есть. Но интернетчики, отключившие использование cookies в своих браузерах, лишаются множества удобств при посещении различных сайтов.
Ссылки по теме
Статья получена: hostinfo.ru