Причина беспорядка в переменной HTTP USER-AGENT

Переменная HTTP - USER-AGENT указывает скриптам сайта, какой браузер их использует, это довольно удобно для различных технофашистов, можно запрещать/разрешать использованияе сайта в зависимости от используемой ОС и браузера. Но если внимательно поглядеть статистику содержащую различные значения этой переменной то можно слегка растеряться, потому что сложно составить однозначный алгоритм определения ОС и браузера, и меня постоянно мучал вопрос, откуда такой бордак в значениях этой переменной. После долгих поисков и размышлений я пришёл к следующему выводу.

Что самая распростраённая запись это:

cat user_agent.txt |sed 's/\//\ /g' |sort --key 1 |uniq -w7  -c |sort -rn|awk '{if(NF>1)print $1,$2}'

223 Mozilla
32 Opera
10 Wget
9 Yandex
8 curl
7 Lynx
4 Java
1 Opera
1 ia_archiver

Это может натолкнуть на мысль, что движёк от Mozilla самый распространённый движёк браузеров,  но если вспомнить историю войн браузеров, то станет ясна причина упоминание Mozilla в USER-AGENT M$ Internet Explorer (кстати самый плохой браузер в мире). MS стремясь отвоевать позиции у NetScape стала прикрывать именем Mozilla чтобы получить полноценный контент сайтов, так как в то время MSIE был ещё худшим чем теперь браузером, и вебмастера готовили для него менее ценный контент. Затем появилась Opera, которая бессовестным образом прикидывалась любым браузером. Затем появился konqueror, на основе KHTML, и они тоже добавили слово Mozilla (чтобы получать полноценный контент), потом Apple форкнула KHTML, появился WebKIT и на его основе появился Safari. Разумеется Safari писал в USER-AGENT слово Mozilla так как являлся потомком KHTML. И наконце появляется выродок Google::Chrome основанный на WebKit и разумеется в его USER-AGENT скорее всего будет, чтото вроде Mozilla, KHTML, WebKit, Chrome

Возможно именно таким образом, из-за совместимости со старыми сайтами и лёгкой подачи M$, которой вообще не свойственны ни какие разумнные технологические поступки, переменная HTTP::USER-AGENT превратилась в свалку.

 

Комментариев 0
Нужна авторизация с помощью
Об авторе
Илья Илья

меня можно найти тут