A felhasználói ügynök egy "karakterlánc" - azaz egy szövegsor - azonosítja a böngészőt és az operációs rendszert a webszerverhez. Ez egyszerűnek tűnik, de a felhasználói ügynökök időnként rendetlenné váltak.
Az alapok
Amikor a böngésző egy webhelyhez csatlakozik, tartalmaz egy felhasználói ügyintéző mezőt a HTTP fejlécében. A felhasználói ügynök mező tartalma a böngészőtől a böngészőig terjed. Minden böngészőnek saját, megkülönböztető felhasználói ügynöke van. Lényegében egy felhasználói ügynök a böngésző egyik módja annak, hogy "Szia, Mozilla Firefox Windows-on vagy Hi, I'm Safari az iPhone-on" egy webszerverre.
A webszerver ezt az információt felhasználhatja különböző weboldalak kiszolgálására a különböző böngészők és különböző operációs rendszerek számára. Például egy webhely mobileszközöket küldhet mobil böngészőkhöz, modern oldalakhoz modern böngészőkhöz és egy "kérjük 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ói ügynöke a Windows 7 rendszeren:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
Vessünk egy pillantást az Internet Explorer 9 felhasználói ügynökére, amely:
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Egy perc múlva visszatérünk. Először is nézzük meg a Google Chrome felhasználói ügynökét:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.52 Safari/536.5
A User Agent String Mess
A mozaik az egyik első böngésző volt. Felhasználó sztringje NCSA_Mosaic / 2.0 volt. Később, a Mozilla ment (később átnevezték a Netscape-ot), és felhasználói ügynöke Mozilla / 1.0. A Mozilla egy fejlettebb böngésző volt, mint a mozaik - különösen támogatta a kereteket. A webkiszolgálók ellenőrizték, hogy a felhasználói ügynök tartalmazta-e a Mozilla szót, és kereteket tartalmazó oldalakat küldött-e a Mozilla böngészõknek. Más böngészőkhöz a webkiszolgálók a régi oldalt keret nélkül adták el.
Végül a Microsoft Internet Explorer jött, és támogatta a kereteket is. Azonban az IE nem kapta meg a weblapokat kerettel, mert a webszerverek csak azokat küldték 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ökéhez, és további információkat (a "kompatibilis" szót és egy hivatkozást az IE-re bocsátott). A webkiszolgálók örömmel látták a Mozilla szót, és elküldték az IE-t a modern weboldalaknak. A későbbiekben megjelent böngészők ugyanezt tették.
A webszerverek nem igazán érdekelnek, hogy mi a pontos felhasználói ügynök-karakterlánc - csak ellenőrizzék, tartalmaz-e egy adott szót.
felhasználások
A webkiszolgálók számos felhasználási célra használják a felhasználói ügynököket, többek között:
- Különböző weboldalak kiszolgálása különböző webes böngészőkhöz. Ezt például jó, például egyszerűbb weboldalak kiszolgálása a régebbi böngészőknek - vagy gonosznak -, például a "Ez a weboldal megtekinthető az Internet Explorerben" üzenet megjelenítéséhez.
- Különböző tartalmak megjelenítése a különböző operációs rendszerekhez - például a karcsú oldalak megjelenítése a mobileszközökön.
- Statisztikai adatok gyűjtése a felhasználók által használt böngészők és operációs rendszerek számára. Ha valaha látja a böngésző piaci részesedés-statisztikáit, így szerezte meg őket.
A web-feltérképező botok felhasználói ügynököket is használnak. A Google webrobotja például például:
Googlebot/2.1 (+https://www.google.com/bot.html)
A webszerverek különleges bánásmódot adhatnak a botoknak - pl. A kötelező regisztrációs képernyőkön keresztül. (Igen, ez azt jelenti, hogy néha megkerülheti a regisztrációs képernyőket, ha a felhasználói ügyintézőt a Googlebotba állítja be.)
A webkiszolgálók adott robots (vagy az összes bot) megrendelését is megadhatják a robots.txt fájl használatával. Például egy webszerver meg tudná mondani egy adott botot, hogy menjen el, vagy mondjon egy másik botot, hogy csak a webhely bizonyos területeit mutassa be. A robots.txt fájlban a botokat felhasználói ügynök sztringjeik azonosítják.
Az összes főbb böngésző tartalmazza az egyéni felhasználói ügyfelek beállításának módjait, így láthatja, hogy mely webkiszolgálók küldhetnek különböző böngészőkhöz. Például állítsa az asztali böngészőjét a mobil böngésző felhasználói ügynökének sztringjére, és megjelenik az asztalon lévő weboldalak mobilverziói.