23Jul
A böngésző elküldi a felhasználói ügynököt minden olyan webhelyre, amelyhez csatlakozik. Már írtunk arról, hogy a böngésző felhasználói ügynökét megváltoztattuk - de mi is van a felhasználói ügynök?
A felhasználói ügynök egy "karakterlánc" - azaz 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ője egy weboldalhoz csatlakozik, tartalmaz egy User-Agent 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, én vagyok Safari az iPhone-on" egy webszerverre.
A webszerver ezt az információt felhasználhatja különböző weboldalak különböző böngészők és különböző operációs rendszerek számára történő kiszolgálására. Például egy webhely mobileszközöket küldhet mobil böngészőkhöz, modern oldalakat modern böngészőkhöz és egy "kérjük, frissítse a böngészőjét" üzenetét 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-en:
Mozilla / 5.0( Windows NT 6.1; WOW64; rv: 12.0) Gecko / 20100101 Firefox / 12.0
Ez a felhasználói ügynök meglehetősen közli a webszervert: az operációs rendszer Windows 7( kódnév: Windows NT 6.1)(WOW64) és a böngésző maga a Firefox 12.
Most vessünk egy pillantást az Internet Explorer 9 felhasználói ügynökére:
Mozilla / 5.0( kompatibilis; MSIE 9.0; Windows NT 6.1; WOW64; Trident /5.0)
A felhasználói ügynök sztring a böngészőt IE 9 -ként azonosítja a Trident 5 renderelő motorral. Azonban előfordulhat, hogy valami zavarossá válik - az IE magát Mozilla-nak nevezi.
Egy perc múlva visszatérünk. Először is 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 a Gecko) Chrome / 19.0.1084.52 Safari / 536.5
A telek megvastagszik:Mozilla és Safari. Megérteni, miért kell megvizsgálnunk a felhasználói ügynökök és böngészők történetét.
A User Agent String Mess
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 Netscape), és a felhasználói ügynök 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.
Végül néhány szerver a Gecko szót - a Firefox renderelő motorját - kereste, és a Gecko böngészőket különböző oldalakra böngészte, mint a régebbi böngészők. A KHTML - eredetileg a Konquererre fejlesztették ki a Linux KDE asztalán - hozzáadta a "Gecko-hoz hasonló" szavakat, hogy megkaphassák a Gecko számára tervezett modern oldalakat is. A WebKit KHTML alapú volt - a fejlesztés során hozzáadták a WebKit szót, és az eredeti "KHTML, mint a Gecko" sor megtartása kompatibilitási célokra.Így a böngésző fejlesztők idők során szavakat adtak hozzá felhasználói ügynökeiknek. Az
webkiszolgálói nem érdekelnek pontosan a pontos felhasználói ügynök-karakterláncok - csak ellenőrizzék, tartalmaz-e egy adott szót.
Az
-t használja A webszerverek különböző célokra 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ő web 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 mobileszközökön egy kicsit lefelé mutató oldal megjelenítésével.
- 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.
Az interneten feltérképező botok felhasználói ügynököket is használnak. Például a Google webrobotja:
Googlebot / 2.1( + http: //www.google.com/ bot.html)
A webszerverek különleges bánásmódot tehetnek a botok számára - például 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 ügynököt a Googlebot-ba állítja.)
A webszerverek adott robots( vagy az összes bots) parancsokat is megadhatnak 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 fontosabb böngésző tartalmazza az egyéni felhasználói ügyfelek beállításának módjait, így láthatja, hogy mely webszerverek küldenek 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.