Główna » jak » Co to jest agent użytkownika przeglądarki?

    Co to jest agent użytkownika przeglądarki?

    Twoja przeglądarka wysyła swojego klienta użytkownika do każdej strony, z którą się łączysz. Pisaliśmy o zmianie przeglądarki użytkownika przeglądarki - ale czym właściwie jest agent użytkownika?

    Agent użytkownika to "ciąg" - czyli linia tekstu - identyfikująca przeglądarkę i system operacyjny na serwerze WWW. To brzmi prosto, ale programy użytkownika stały się bałaganem w czasie.

    Podstawy

    Kiedy twoja przeglądarka łączy się ze stroną internetową, zawiera pole User-Agent w nagłówku HTTP. Zawartość pola klienta użytkownika zależy od przeglądarki i przeglądarki. Każda przeglądarka ma swój własny, wyróżniający się agent użytkownika. Zasadniczo agent użytkownika to sposób, w jaki przeglądarka może powiedzieć "Cześć, jestem Mozilla Firefox w systemie Windows" lub "Cześć, jestem przeglądarką Safari na iPhonie" na serwerze sieciowym.

    Serwer sieciowy może wykorzystać te informacje do obsługi różnych stron internetowych do różnych przeglądarek internetowych i różnych systemów operacyjnych. Na przykład witryna może wysyłać strony mobilne do przeglądarek mobilnych, nowoczesne strony do nowoczesnych przeglądarek i komunikat "proszę uaktualnić przeglądarkę" do przeglądarki Internet Explorer 6.

    Badanie agentów użytkownika

    Na przykład tutaj jest agent użytkownika Firefoksa w systemie Windows 7:

    Mozilla / 5.0 (Windows NT 6.1; WOW64; rv: 12.0) Gecko / 20100101 Firefox / 12.0

    Ten klient użytkownika dość dużo mówi serwerowi internetowemu: System operacyjny to Windows 7 (nazwa kodowa Windows NT 6.1), jest to 64-bitowa wersja systemu Windows (WOW64), a sama przeglądarka to Firefox 12.

    Teraz przyjrzyjmy się agentowi użytkownika programu Internet Explorer 9, który jest:

    Mozilla / 5.0 (zgodny, MSIE 9.0, Windows NT 6.1; WOW64; Trident / 5.0)

    Łańcuch agenta użytkownika identyfikuje przeglądarkę jako IE 9 z silnikiem renderującym Trident 5. Jednak możesz zauważyć coś mylącego - IE identyfikuje się jako Mozilla.

    Wrócimy do tego za chwilę. Najpierw sprawdźmy także klienta użytkownika Google Chrome:

    Mozilla / 5.0 (Windows NT 6.1; WOW64) AppleWebKit / 536.5 (KHTML, jak Gecko) Chrome / 19.0.1084.52 Safari / 536.5

    Fabuła gęstnieje: Chrome udaje, że jest zarówno Mozillą, jak i Safari. Aby zrozumieć, dlaczego tak się dzieje, musimy przeanalizować historię programów klienckich i przeglądarek.

    Ciąg Mess użytkownika agenta użytkownika

    Mosaic była jedną z pierwszych przeglądarek. Jego ciąg agenta użytkownika to NCSA_Mosaic / 2.0. Później pojawiła się Mozilla (później przemianowana na Netscape), a jej agentem użytkownika była Mozilla / 1.0. Mozilla była bardziej zaawansowaną przeglądarką niż Mozaika - w szczególności obsługiwała ramki. Serwery WWW sprawdzały, czy agent użytkownika zawiera słowo Mozilla i wysyłał strony zawierające ramki do przeglądarek Mozilli. W innych przeglądarkach serwery internetowe wysyłały stare strony bez ramek.

    Ostatecznie pojawił się Microsoft Internet Explorer, który również obsługuje ramki. Jednak IE nie otrzymywał stron internetowych z ramkami, ponieważ serwery internetowe właśnie wysłały je do przeglądarek Mozilli. Aby rozwiązać ten problem, firma Microsoft dodała słowo "Mozilla" do swojego agenta użytkownika i dodała dodatkowe informacje (słowo "zgodny" i odnośnik do IE). Serwery internetowe z radością widziały słowo Mozilla i wysyłały IE na nowoczesne strony internetowe. Inne przeglądarki, które przyszły później, zrobiły to samo.

    W końcu niektóre serwery szukały słowa Gecko - mechanizmu renderującego Firefoksa - i obsługiwały przeglądarki Gecko inne strony niż starsze przeglądarki. KHTML - pierwotnie opracowany dla Konquerera na pulpicie KDE Linuksa - dodał słowa "jak Gecko", aby uzyskać nowoczesne strony przeznaczone dla Gecko. WebKit został oparty na KHTML - gdy został opracowany, dodano słowo WebKit i zachował oryginalną linię "KHTML, jak Gecko" dla celów kompatybilności. W ten sposób twórcy przeglądarek z czasem dodawali słowa do swoich programów użytkownika.

    Serwery WWW nie dbają o to, jaki jest dokładny ciąg agenta użytkownika - po prostu sprawdzają, czy zawiera ono określone słowo.

    Używa

    Serwery WWW używają agentów użytkownika do różnych celów, w tym:

    • Udostępnianie różnych stron internetowych różnym przeglądarkom internetowym. Można to wykorzystać na dobre - na przykład, aby służyć prostszym stronom internetowym do starszych przeglądarek - lub złu - na przykład, aby wyświetlić komunikat "Ta strona musi być wyświetlana w przeglądarce Internet Explorer".
    • Wyświetlanie różnych treści dla różnych systemów operacyjnych - na przykład wyświetlając odchudzoną stronę na urządzeniach mobilnych.
    • Zbieranie statystyk pokazujących przeglądarki i systemy operacyjne używane przez ich użytkowników. Jeśli kiedykolwiek zobaczysz statystyki udziału w rynku przeglądarki, w ten sposób zostaną one pozyskane.

    Boty indeksujące sieć również używają agentów użytkownika. Na przykład robot internetowy Google identyfikuje się jako:

    Googlebot / 2.1 (+ http: //www.google.com/bot.html)

    Serwery WWW mogą zapewniać specjalne traktowanie botów - na przykład poprzez zezwalanie im na obowiązkowe ekrany rejestracyjne. (Tak, oznacza to, że czasami możesz ominąć ekrany rejestracyjne, ustawiając swojego klienta użytkownika na Googlebota).

    Serwery WWW mogą również wydawać zamówienia określonym botom (lub wszystkim botom) za pomocą pliku robots.txt. Na przykład serwer internetowy może nakazać swojemu botowi odejście, lub powiedzieć innemu botowi, że indeksuje tylko niektóre obszary witryny. W pliku robots.txt boty są identyfikowane przez ciągi agenta użytkownika.


    Wszystkie główne przeglądarki zawierają sposoby ustawiania niestandardowych programów klienckich, aby można było zobaczyć, jakie serwery WWW wysyłają do różnych przeglądarek. Na przykład ustaw przeglądarkę na komputerze na ciąg agenta użytkownika przeglądarki mobilnej, a zobaczysz mobilne wersje stron internetowych na pulpicie.