23Jul
הדפדפן שלך שולח את סוכן המשתמש שלו לכל אתר שאליו אתה מתחבר.כתבנו על שינוי סוכן המשתמש של הדפדפן שלך בעבר - אבל מה בדיוק הוא סוכן משתמש, בכל זאת?
סוכן משתמש הוא "מחרוזת" - כלומר, שורת טקסט - זיהוי הדפדפן ומערכת ההפעלה לשרת האינטרנט.זה נשמע פשוט, אבל סוכני משתמש הפכו בלגן לאורך זמן.
היסודות
כאשר הדפדפן שלך מתחבר לאתר אינטרנט, הוא כולל שדה User-Agent בכותרת HTTP שלו.התוכן של שדה סוכן המשתמש משתנה מדפדפן לדפדפן.לכל דפדפן יש סוכן משתמש משלו.בעיקרו של דבר, סוכן משתמש הוא דרך לדפדפן לומר "היי, אני Mozilla Firefox ב- Windows" או "היי, אני ספארי ב- iPhone" לשרת אינטרנט.
שרת האינטרנט יכול להשתמש במידע זה כדי לשרת דפי אינטרנט שונים לדפדפני אינטרנט שונים ומערכות הפעלה שונות.לדוגמה, אתר אינטרנט יכול לשלוח דפים לנייד לדפדפנים ניידים, לדפים מודרניים לדפדפנים מודרניים ולדוא"ל "בבקשה לשדרג את הדפדפן" ל- Internet Explorer 6.
בחינת סוכני משתמשים
לדוגמה, הנה סוכן המשתמש של Firefox ב- Windows 7:
Mozilla / 5.0( Windows NT 6.1, WOW64, rv: 12.0) Gecko / 20100101 Firefox / 12.0
סוכן משתמש זה מספר את שרת האינטרנט לא מעט: מערכת ההפעלה היא Windows 7( שם קוד Windows NT 6.1)(WOW64), והדפדפן עצמו הוא Firefox 12.
עכשיו בואו נסתכל על סוכן המשתמש של Internet Explorer 9, שהוא:
Mozilla / 5.0( תואם; MSIE 9.0; Windows NT 6.1; WOW64; Trident /5.0)
מחרוזת סוכן המשתמש מזהה את הדפדפן כ- IE 9 עם מנוע עיבוד Trident 5.עם זאת, אתה יכול לזהות משהו מבלבל - IE מזהה את עצמה כמו מוזילה.
נחזור לזה תוך דקה.ראשית, הבה נבחן גם את סוכן המשתמש של Google Chrome:
Mozilla / 5.0( Windows NT 6.1, WOW64) AppleWebKit / 536.5( KHTML, כמו Gecko) Chrome / 19.0.1084.52 Safari / 536.5
העלילה מתרסקת: Chrome מעמיד פנים שהואמוזילה וספארי.כדי להבין מדוע, נצטרך לבחון את ההיסטוריה של סוכני משתמש ודפדפנים.
User Agent String Mess
פסיפס היה אחד הדפדפנים הראשונים.מחרוזת סוכן המשתמש שלה הייתה NCSA_Mosaic / 2.0.מאוחר יותר, מוזילה באה( שנודע מאוחר יותר בשם Netscape), וסוכן המשתמש שלה היה Mozilla / 1.0.מוזילה היתה דפדפן מתקדם יותר מאשר פסיפס - בפרט, הוא תומך מסגרות.שרתי אינטרנט בדקו כי סוכן המשתמש הכיל את המילה Mozilla ושלח דפים המכילים מסגרות לדפדפני Mozilla.לדפדפנים אחרים, שרתי האינטרנט שלחו את הדפים הישנים ללא מסגרות.
בסופו של דבר, Internet Explorer של מיקרוסופט הגיע יחד והוא תומך מסגרות, מדי.עם זאת, IE לא קיבל דפי אינטרנט עם מסגרות, כי שרתי אינטרנט פשוט שלח אותם לדפדפנים מוזילה.כדי לתקן בעיה זו, מיקרוסופט הוסיפה את המילה Mozilla לסוכן המשתמש שלהם וזרקה מידע נוסף( המילה "תואם" והתייחסות ל- IE.) שרתי האינטרנט שמחו לראות את המילה Mozilla ושלחו את IE לדפי האינטרנט המודרניים.דפדפנים אחרים שבאו אחר כך עשו את אותו הדבר.
בסופו של דבר, כמה שרתים חיפשו את המילה Gecko - פיירפוקס של מנוע עיבוד - ושירת הדפדפנים של גקו בדפים שונים מאשר בדפדפנים ישנים יותר.KHTML - פותח במקור עבור Konquerer על שולחן העבודה של KDE של לינוקס - הוסיף את המילים "כמו Gecko" כך שהם יקבלו את הדפים המודרניים המיועדים גקו, גם.WebKit היה מבוסס על KHTML - כאשר הוא פותח, הם הוסיפו את המילה WebKit ושמרו על המקורי "KHTML, כמו Gecko" קו למטרות תאימות.בדרך זו, מפתחי הדפדפן המשיכו להוסיף מילים לסוכני המשתמשים שלהם לאורך זמן.
שרתי אינטרנט לא ממש אכפת מה מחרוזת סוכן המשתמש המדויק הוא - הם פשוט לבדוק אם הוא מכיל מילה מסוימת.
משתמש בשרתי אינטרנט
משתמשים בסוכני משתמש למגוון מטרות, כולל:
- הצגת דפי אינטרנט שונים לדפדפני אינטרנט שונים.זה יכול לשמש טוב - למשל, כדי לשרת דפי אינטרנט פשוטים לדפדפנים ישנים - או רע - למשל, כדי להציג את "דף אינטרנט זה חייב להיות מוצג ב- Internet Explorer" הודעה.
- הצגת תוכן שונה למערכות הפעלה שונות - לדוגמה, על ידי הצגת דף דק במכשירים ניידים.
- איסוף נתונים המציגים את הדפדפנים ומערכות ההפעלה בשימוש על ידי המשתמשים שלהם.אם אי פעם תראה נתונים סטטיסטיים של נתח שוק בדפדפן, כך הם נרכשים.
סורקי סריקה ברשת משתמשים גם בסוכני משתמשים.לדוגמה, סורק האינטרנט של Google מזהה את עצמו בתור:
Googlebot / 2.1( + http: //www.google.com/ bot.html) שרתי האינטרנט
יכולים לתת בוטים טיפול מיוחד - לדוגמה, על ידי מתן אפשרות להם דרך מסכי רישום חובה.(כן, פירוש הדבר שאתה יכול לפעמים לעקוף את מסכי ההרשמה על ידי הגדרת סוכן המשתמש שלך ל- Googlebot.) שרתי האינטרנט
יכולים גם לתת פקודות לרובוטים ספציפיים( או לכל הרובוטים) באמצעות הקובץ robots.txt.לדוגמה, שרת אינטרנט יכול לספר לרובוט מסוים ללכת, או לספר בוט אחר רק לאינדקס אזורים מסוימים של האתר.בקובץ robots.txt, הרובוטים מזוהים על-ידי מחרוזות סוכן המשתמש שלהם.
כל הדפדפנים העיקריים מכילים דרכים להגדיר סוכני משתמש מותאמים אישית, כך שתוכל לראות מה שרתי אינטרנט שולח אל דפדפנים שונים.לדוגמה, הגדר את דפדפן שולחן העבודה שלך למחרוזת סוכן משתמש של הדפדפן לנייד ותראה את הגרסאות לנייד של דפי אינטרנט בשולחן העבודה שלך.