User Agents

User Agents

یوزر ایجنت (User Agent) یه رشته متنی هست که مرورگر برای معرفی خودش به وب سرور ارسال می‌کنه. این رشته حاوی اطلاعاتی درباره نوع و نسخه مرورگر، سیستم‌عامل و نوع دستگاهه. وقتی یک درخواست به سرور ارسال می‌شه، این رشته در هدر HTTP قرار می‌گیره. سرورها از اطلاعات User Agent برای ارائه صحیح محتوا به مرورگر استفاده می‌کنن. به عنوان مثال یک سرور ممکنه بر اساس User Agent دریافتی، نسخه موبایل-فرندلی یک سایت رو به گوشی و نسخه دسکتاپ به کامپیوتر نمایش بده.

انواع User Agent:

  • مرورگرهای وب مثل کروم، فایرفاکس و اینترنت اکسپلورر
  • اپلیکیشن‌های موبایلی که درخواست‌های HTTP انجام میدن
  • اپلیکیشن‌های دسکتاپ مثل ایمیل کلاینت‌ها
  • ربات‌ها و کرالرهای خودکار
  • دستگاه‌های اینترنت اشیا مثل ترموستات‌ها و دوربین‌های امنیتی
  • مدل‌های User Agent سفارشی برای اهداف خاص

ساختار User Agent گوگل‌بات موبایل:

Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

  • Mozilla: نام محصول
  • 5.0: نسخه محصول
  • (Linux; Android 6.0.1; Nexus 5X Build/MMB29P): اطلاعات سیستم‌عامل و دستگاه
  • AppleWebKit/537.36: موتور رندرینگ مرورگر
  • Chrome/41.0.2272.96: نام و نسخه مرورگر
  • Mobile Safari/537.36: مرورگر شبیه به Safari
  • (compatible; Googlebot/2.1; +http://www.google.com/bot.html): اطلاعات درباره کرالر گوگل‌بات

کاربردهای User Agent:

  • سرور می‌تواند با توجه به اطلاعات دستگاه، نسخه مناسب سایت را نمایش دهد
  • تعیین نسخه و به‌روز بودن مرورگر
  • تشخیص کاربر واقعی از ربات

User Agent در سئو:

خزنده‌های گوگل هم دارای User Agent هستند. بررسی User Agent آنها در آنالیز لاگ، به شناخت بهتر رفتارشان کمک می‌کند. گوگل سه دسته‌بندی برای خزنده‌ها دارد که هر کدام User Agent مخصوص به خودشان را دارند. با توجه به اینکه رفتار هر خزنده متفاوت است، شناسایی آن‌ها از طریق User Agent به بهینه‌سازی سئو کمک می‌کند.

برای مثال مشخصات Google-InspectionTool با Googlebot Smartphone متفاوت هست و نوع برخوردی که هر کدوم از این User Agent‌ها هم با سایت ما متفاوته. برای مثال ممکنه ما طراحی متفاوتی برای یک صفحه داشته باشیم و دسترسی گوگل بات رو برای کرال این بخش محدودد کنیم؛ اما وقتی از تست لایو سرچ کنسول استفاده میکنیم، متوجه خواهیم شد که بخش مورد نظر وجود داره و بات هم میبینتش 😏 چرا؟ چون از دو بات با User Agent‌های متفاوت توقع رفتار یکسانی داشتیم.

امیدوارم این مطلب مفید بوده باشه. برای اطلاعات بیشتر می‌توانید به این صفحه مراجعه کنید:

https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers