網站日志中顯示 Mozilla/5.0 (Linux; Android 4.4.2; HG680-KA Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Safari/537.36


很久很久以前有一個瀏覽器名字叫 NCSA Mosaic

很久很久以前有一個瀏覽器名字叫 NCSA Mosaic

緊接着也出現了一個 Mozilla 的瀏覽器 (Mozilla 的意思是 Mosaic 終結者)
后來 Mozilla 的正式發布版本是 Netscape 它把自己標稱為Mozilla/1.0 (Win3.1)
由於 Netscape支持框架顯示,后來框架在大家中間流行起來了,但Mosaic不支持框架。
所以網站管理員們則通過 User-Agent 判斷,如果是Netscape瀏覽器則進入框架(html frame)的頁面,如果不是Netscape 瀏覽器則進入沒有框架的頁面.

Netscape 沒有風光多久,微軟也推出了自己的 IE瀏覽器 。IE瀏覽器也支持 框架 但是很遺憾,網站管理員們不認識它呀,因為IE的 User-Agent 沒有Mozilla 所有沒有人理它。后來微軟抓狂了,你們不就是只認識User-Agent 頭里有 Mozilla 字符的瀏覽器么,於是宣稱自己是“兼容Mozilla”的,開始模仿Netscape,把自己標稱為Mozilla/1.22 (compatible; MSIE 2.0; Windows 95)。這樣一來 IE 也有了Mozilla (其實是偽裝的…) 所以那些框架也能看到了.

后來隨着微軟把瀏覽器捆綁進自己的操作系統里一起賣,隨就爆發了瀏覽器大戰。結果大家都很清楚,Netscape失敗了。而微軟大勝了,至今微軟的IE依然影響着 w3c 影響着所有瀏覽器。

Netscape 失敗后重生為Mozilla 構造了Gecko,標稱其為Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826,Gecko屬於渲染引擎,表現優異。Mozilla開發了Firefox,標稱為Mozilla/5.0 (Windows; U; Windows NT 5.1; sv-SE; rv:1.7.5) Gecko/20041108 Firefox/1.0,並且Firefox表現也非常優秀.

由於 Gecko 的優秀,網站管理員們會判斷瀏覽器是否是 Gecko 的,如果是則把更先進 更漂亮頁面顯示給這個瀏覽器,其他瀏覽器就沒有這個待遇了。

(比如現在的HTML5 , 如果我判斷是你firefox的新版本則跳轉到地址1,如果是ie則去地址2)

看到 Gecko 能看到這么漂亮的頁面 Linux 的平台的孩子們很桑心,因為他們創建了基於KHTML引擎支持的Konqueror也跟 Gecko 一樣優秀,但卻不帶有Gecko而被識別。結果Konquerer開始偽裝自己“像Gecko”那樣以看到更漂亮的網頁,並標稱自己為 Mozilla/5.0 (compatible; Konqueror/3.2; FreeBSD)(KHTML, like Gecko),這個世界就抽風了….

Apple開發了Safari,使用了KHTML,同時也增加了很多新特性,后來另起爐灶叫了WebKit,但是它有希望能夠看到那些為KHTML編寫的網頁,於是Safari標稱自己為Mozilla/5.0 (Macintosh; U; PPC Mac OS X; de-de) AppleWebKit/85.7 (KHTML, like Gecko) Safari/85.5,就更加混亂了.

Google也開發了自己的瀏覽器Chrome,使用了Webkit,有點像Safari,希望能看到為Safari編寫的網頁,於是決定裝成Safari。Chrome使用了WebKit渲染引擎,想裝成Safari,Chrome宣稱自己是Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko)Chrome/0.2.149.27 Safari/525.13

最后:

IE偽裝成 Mozilla
webKit 偽裝成 KHTML
KHTML 偽裝成 Gecko

最后 opera 偽裝成上面任何瀏覽器

同時所有的瀏覽器又都宣稱自己是 Mozilla


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM