Сергей Петренко, директор Яндекс-Украина, в своем блоге путает два понятия в одно.
Изначально, в более узком смысле, Согласование содержимого (Content negotiation) - это механизм, заложенный в протокол HTTP, позволяющий показывать по одному URL контент, наиболее удобным способом отображаемый конретным агентом для конкретного пользователя. В частности, речь идет о выборе языка документа и его вида (MIME Type).
В более широком смысле, под согласованием содержимого как раз и подпадают все "удобности" Яндекса по показу погоды, рассписания, ТВ-программы и др. под конретного пользователя - здесь именно согласовывается (на основании IP-адреса клиента, или его предпочтений из профиля) какая именно информация наиболее полезна для пользователя. Именно содержимого, и именно таким образом, что если поисковый робот зайдет с тем же IP (в действительности с IP того же региона), теми же предпочтениями языка и вида документа, ему будет выдан тот же контен, что и пользователю.
Клоакинг же (Cloaking) - это именно выдача поисковому роботу другой информации, нежели пользователю, независимости от одинаковости с ним всех остальных параметров, с целью влияния на выдачу поисковой машины.
Чувствуется, что вы хорошо и теоретически знакомы с вопросом :).
В очень широком смысле, даже при самом изощренном клоакинге, существует очень простой способ поймать клоакера - это зайти обычным браузером с пользовательского IP и IP робота. Потому что единственный работающий способ клоакинга - это вычисление IP адресов, принадлежащих поисковым ботам, и подмена контента по IP, с которого приходит запрос.
Content Negotiation - это другое. Хотя бы по логике работы - в этом случае на сервере лежит, скажем, несколько языковых версий одого документа, а браузер сообщает, на каком языке ему их надо показать. В том, что мы называем клоакингом, браузер ничем не управляет - сервер принимает решение в зависимости от параметров клиента, какой контент выдать. На мой взгляд, разница принципиальная.
Судя по всему сегодня Яндекс нанес по Гуглу сокрушающий удар на Украине 🙂
У вас очень упрощенное представление о Content-Negotiation. И по сути про него вы пересказали то, что я написал выше.
Я попробую сказать еще короче: клоакинг - это сугубо обман поисковика, не бывает "белого" клоакинга (Это написано в статье Википедии, ссылку на которую я привел). Доброкачественные действия называются Content Negotiation.
Для справки, HTTP 1.1 для Content Negotiation определяет три типа: Agent-driven, Server-driven и Transparent. Более того, спецификация явно указывает, что сервер может для согласования содержимого использовать любой заголовок запроса, а также любую другую информацию о запросе (не указанную явно в заголовках). <RFC2616 , Секция 12.1, второй абзац с конца.>