Mi a böngésző felhasználói ügynöke?
A böngésző elküldi a felhasználói ügynököt minden olyan webhelyhez, amelyhez csatlakozik. A böngésző felhasználói ügynökének megváltoztatásáról írtunk már korábban - de pontosan mi a felhasználói ügynök?
A felhasználói ügynök egy „string” - azaz egy szövegsor - a böngésző és az operációs rendszer azonosítására a webszerverre. Ez egyszerűen hangzik, de a felhasználói ügynökök az idő múlásával váltak rendetlenségnek.
Az alapok
Ha a böngészője csatlakozik egy webhelyhez, a HTTP-fejlécben egy Felhasználói-Agent mezőt tartalmaz. A felhasználói ügynök mező tartalma böngészőtől a böngészőig változik. Minden böngészőnek saját, egyedi felhasználói képviselője van. Lényegében a felhasználói ügynök egy böngésző számára azt jelenti, hogy „Hi, én vagyok a Mozilla Firefox Windows-on” vagy „Szia, én Safari vagyok egy iPhone-on” egy webszerverre.
A webkiszolgáló használhatja ezt az információt különböző weblapok különböző webböngészők és különböző operációs rendszerek kiszolgálására. Például egy webhely mobil oldalakat küldhet a mobil böngészőkbe, a modern oldalakra a modern böngészőkhöz, és egy „frissítse a böngészőjét” üzenetet az Internet Explorer 6-ra.
Felhasználói ügynökök vizsgálata
Például itt van a Firefox felhasználója a Windows 7 rendszeren:
Mozilla / 5.0 (Windows NT 6.1; WOW64; rv: 12.0) Gecko / 20100101 Firefox / 12,0
Ez a felhasználói ügynök egy kicsit megmondja a webkiszolgálónak: Az operációs rendszer Windows 7 (kódnév: Windows NT 6.1), a Windows 64 bites verziója (WOW64), és maga a böngésző a Firefox 12.
Most nézzük meg az Internet Explorer 9 felhasználói ügynökét, amely:
Mozilla / 5.0 (kompatibilis; MSIE 9.0; Windows NT 6.1; WOW64; Trident / 5.0)
A felhasználói ügynök karakterlánc azonosítja az IE 9 böngészőt a Trident 5 renderelőmotorral. Lehet, hogy valami zavaró helyet találhat - az IE azonosítja magát Mozillaként.
Egy perc múlva visszatérünk erre. Először nézzük meg a Google Chrome felhasználói ügynökét is:
Mozilla / 5.0 (Windows NT 6.1; WOW64) AppleWebKit / 536,5 (KHTML, mint Gecko) Chrome / 19.0.1084.52 Safari / 536,5
A telek sűrűbbé válik: a Chrome úgy tűnik, hogy Mozilla és Safari is. Hogy megértsük, miért, meg kell vizsgálnunk a felhasználói ügynökök és böngészők történetét.
A felhasználói ügynök sztrájkja
A mozaik az egyik első böngésző. A felhasználói ügynök karakterlánc NCSA_Mosaic / 2.0 volt. Később a Mozilla jött (később Netscape-nek nevezték), és a felhasználói ügynök Mozilla / 1.0 volt. A Mozilla sokkal fejlettebb böngésző volt, mint a Mozaik - különösen a kereteket támogatta. A webkiszolgálók ellenőrzik, hogy a felhasználói ügynök tartalmazta-e a Mozilla szót és a Mozilla böngészőkre kereteket tartalmazó küldött oldalakat. Más böngészőkhöz a webszerverek a régi oldalakat keret nélkül küldték.
Végül a Microsoft Internet Explorer-je jött és támogatta a kereteket is. Az IE azonban nem kapott kereteket tartalmazó weblapokat, mert a webkiszolgálók csak elküldték azokat a Mozilla böngészőknek. A probléma megoldásához a Microsoft hozzáadta a Mozilla szót a felhasználói ügynökhöz, és további információkat (a „kompatibilis” szót és az IE-re való hivatkozást) dobta. Más későbbi böngészők ugyanezt tette.
Végül, néhány szerver kereste a Gecko - Firefox renderelő motorját -, és a Gecko böngészőit különböző oldalakon szolgáltatta, mint a régebbi böngészők. KHTML - amelyet eredetileg a Konquerer számára fejlesztettek ki a Linux KDE asztalán - hozzáadta a „Gecko-hoz hasonló” szavakat, így megkapják a Gecko számára tervezett modern oldalakat. A WebKit KHTML-en alapult - a fejlesztéskor hozzáadták a WebKit szót, és kompatibilitási célokra az eredeti „KHTML-t, mint a Gecko” sort tartották. Ily módon a böngésző-fejlesztők idővel hozzáadtak szavakat a felhasználói ügynökeikhez.
A webkiszolgálók nem törődnek azzal, hogy a pontos felhasználói ügynök karakterlánc van - csak ellenőrzik, hogy tartalmaz-e egy konkrét szót.
felhasználások
A webkiszolgálók különböző célokra használják a felhasználói ügynököket, például:
- Különböző weblapok kiszolgálása különböző webböngészőkhöz. Ez jó megoldásként használható - például, hogy egyszerűbb weblapokat szolgáljon a régebbi böngészőknek - vagy a gonoszoknak - például, hogy megjelenjen egy „Ez a weblap az Internet Explorerben” üzenetet.
- Különböző tartalmak megjelenítése különböző operációs rendszerekre - például a mobileszközökön lefelé mutató oldal megjelenítésével.
- A felhasználók által használt böngészők és operációs rendszerek bemutatásának statisztikái. Ha valaha látja a böngésző piaci részesedésének statisztikáit, így szerezhető be.
A webes feltérképező botok is használják a felhasználói ügynököket. Például a Google webes bejárója azonosítja magát:
Googlebot / 2.1 (+ http: //www.google.com/bot.html)
A webkiszolgálók speciális botot kaphatnak - például a kötelező regisztrációs képernyőn keresztül. (Igen, ez azt jelenti, hogy néha megkerülheti a regisztrációs képernyőket, ha a felhasználói ágensét a Googlebot-ra állítja.)
A webkiszolgálók a robots.txt fájl segítségével is rendelhetnek bizonyos botokat (vagy minden botot). Például egy webszerver elmondhatja egy adott botnak, hogy menjen el, vagy mondjon egy másik botnak, hogy csak a webhely egyes területeit indexelje. A robots.txt fájlban a botokat a felhasználói ügynök karakterláncai azonosítják.
Az összes főbb böngésző az egyéni felhasználói ügynökök beállításának módjait tartalmazza, így láthatja, hogy a webkiszolgálók hogyan küldnek különböző böngészőknek. Például állítsa be az asztali böngészőt egy mobil böngésző felhasználói ügynök karakterláncára, és a weblapok mobil verzióit láthatja az asztalon.