Во-первых, файлы cookie устанавливаются и извлекаются через заголовки HTTP. Если ваш браузер отправляет запрос на http://example.com , ответ может возвращаться с заголовком, в котором говорится Set-Cookie: foo=bar
. Ваш браузер сохраняет этот файл cookie, и при любых последующих запросах на http://example.com ваш браузер будет отправлять его foo=bar
в Cookie
заголовок. (Или, по крайней мере, до тех пор, пока срок действия файла cookie не истечет или он не будет удален.) Браузер отправляет foo=bar
файл cookie с любым запросом на http://example.com , независимо от того, кто инициировал запрос или каков контекст. Если http://example2.com содержит тег <img src="http://example.com/img.jpg">
, браузер отправит файл cookie foo=bar
при получении http://example.com/img.jpg., хотя http://example2.com отвечает за отправку запроса.
Итак, если веб-сайт A содержит рекламу, которую обслуживает веб-сайт B, то веб-сайт B может установить файл cookie в вашем браузере. Например, возможно, веб-сайт A использует <iframe src="http://websiteB.com/ad.html></iframe>
для показа рекламы с веб-сайта B. Затем, когда ваш браузер перейдет к загрузке http://websiteB.com/ad.html
, ответ вернется с Set-Cookie
заголовком, который устанавливает файл cookie с некоторой уникальной случайной строкой. Если веб-сайт C также включает рекламу с веб-сайта B, то этот уникальный файл cookie будет отправлен, когда объявление на веб-сайте C будет получено с веб-сайта B.
Что касается того, как веб-сайт B узнает, какой именно веб-сайт вы посещаете, существует множество способов. В некоторых случаях, когда браузер отправляет запрос на один веб-сайт, он сообщает ему, с какого веб-сайта вы переходите. Поэтому, когда браузер переходит к выборке http://websiteB.com/ad.html
, он может включать HTTP-заголовок, Referer: http://websiteA.com
который сообщает веб-сайту B, что запрос был инициирован веб-сайтом A. Каждый раз, когда веб-сайт B видит уникальную случайную строку, которую он назначил вам, он может проверить заголовок Referer, чтобы добавить в журнал о том, где вы были. Если веб-сайт A взаимодействует с веб-сайтом B, A может просто напрямую сообщить B, что вы переходите с веб-сайта A. Например, веб-сайт A может включать рекламу с веб-сайта B с помощью <iframe src="http://websiteB.com/ad.html?referer=websiteA.com">
, а затем веб-сайт B увидит референт в запросе строка.
Это помогает? Есть ли определенные части ответа, которые вы связали, которые не имеют для вас смысла?