Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - User Agent - Подделка User-agent02 мая 2011Оглавление: 1. User Agent 2. Подделка User-agent 3. Примеры значений User Agent 4. Описание некоторых основных значений User Agent 5. Уровни шифрования «U» / «I» / «N» ПричиныИскусственная несовместимостьИспользование веб-сайтами строки User-agent для изменения отображения страницы часто приводит к тому, что менее популярные браузеры не получают полного содержимого страницы, даже если они могут корректно его отобразить, а в некоторых радикальных случаях такие браузеры не получают вообще ничего. В связи с этим многие браузеры стали «прятать» или «подделывать» User-agent. Ранний пример этого использование браузером Internet Explorer строки User-Agent, начинающейся с «Mozilla/<version> компании Netscape. Такой формат строки User-Agent с тех пор использовался и другими браузерами; в частности, из-за того, что доминировать стал Internet Explorer. Когда Internet Explorer стал доминирующим браузером, такие конкуренты как Firefox, Safari и Opera встроили системы, позволяющие пользователю выбрать ложное значение User-Agent, такое же, что и у свежих версий Explorer. Некоторые из них копировали значение User-Agent полностью, другие копировали значение User-Agent, добавляя истинное имя браузера в конце, что позже привело к тому, что строка содержит три имени и версии: первое зовётся как «Mozilla»; далее «MSIE»; и последнее, действительный браузер, такой как «Opera». Opera также позволяет полностью спрятаться под Internet Explorer или Firefox, полностью скрывая имя «Opera». В случае Safari строка User-Agent содержит 5 имен, «KHTML, like Gecko» и Safari. Таким образом, если сайт делает проверку на практически любой современный браузер Safari ее пройдет. Другие браузеры на движке WebKit работают аналогично. Кроме браузеров, другие программы, использующие протокол HTTP, к примеру менеджеры закачек и оффлайновые браузеры, также имеют возможность изменять значение User-Agent, посылаемое серверу, по желанию пользователя. Это сделано, наверное, для обеспечения совместимости с определёнными серверами. Подобная проблема продолжает существовать в мире браузеров, и поэтому начата кампания, способствующая тому, чтобы разработчики сайтов проектировали сайты в соответствии со стандартами, а не для какого-то любого определённого браузера. Так, многие веб-сайты, созданные в 2005 году, лучше соответствуют стандартам, чем это было ранее в истории Web. Однако, на некоторых сайтах всё ещё используются устаревшие скрипты JavaScript, в сущности, блокирующие работу других браузеров, помимо Internet Explorer или Netscape Navigator. Причина этого часто заключается в бездумном копировании старого кода, взятого с других сайтов, без полного понимания того, какой эффект этот код будет в действительности иметь. ПоследствияОдним из результатов подделки значения User-Agent является переоценка популярности соответствующего браузера в статистике и недооценка популярности других браузеров и, как следствие, отсутствие у разработчиков вышеописанных сайтов стимула к исправлению проблем совместимости. Подделка значения User-Agent также может привести к угрозе безопасности при подделывании поискового робота и обходе ключевых частей веб-сайта. Просмотров: 6795
|