ما هي سلسلة User-Agent؟
ترويسة User-Agent تعرّف العميل الذي يرسل الطلب — عائلة المتصفح وإصداره، ونظام التشغيل، وفئة الجهاز، أو اسم الزاحف. نشأت صيغتها بالتراكم، لذا تحتوي معظم السلاسل على رموز تاريخية مثل "Mozilla/5.0"؛ تحليلها مفيد لاختبار التوافق والتحليلات، لكنها مُعلَنة ذاتياً وسهلة التزييف، فلا تعتمد عليها في القرارات الأمنية.
Mozilla/5.0 وAppleWebKit وSafari رموزاً تاريخية: الرمز Chrome/ وحده يحدّد المتصفح والمحرك، أما المنصة وذيل الإصدار فمجمّدان.قيمة ترويسة User-Agent واحدة
الجزء 1:Mozilla/5.0
- 1رمز تاريخيتحتويه معظم السلاسل، ولا يقول شيئاً عن المتصفح
- 2المنصةيُعرض نظام التشغيل كما أُرسل؛ و
Kقيمة بديلة، فلا يظهر أي طرازAndroid 10مجمّد - 3رموز توافقتُتجاهَل مع Chrome: يُقرأ المحرك Blink 126.0.0.0 من الرمز
Chrome/ - 4المتصفح والإصدار الرئيسيالجزء الحقيقي الوحيد من الإصدار
Google Chrome 126.0.0.0 (major 126) - 5الأرقام الفرعية ورقما البناء والتصحيحمجمّدة على 0.0.0 منذ Chrome 101مجمّد
- 6فئة الجهازنوع الجهاز:
mobile؛ ومن دونMobileيُعدّ جهاز Android جهازاً لوحياً - 7رمز توافقيُتجاهَل: يُطابَق Chrome قبل Safari
مثال الصفحة، وهو سلسلة User-Agent مختزلة؛ وكل قيمة هي ما تعرضه الأداة لها. ولا تتوفر القيم الدقيقة للإصدار والطراز إلا عبر Client Hints.
كيفية استخدام محلّل User-Agent
- الصق سلسلة User-Agent من السجلات أو أدوات التحليلات أو تقرير خطأ — أو اترك الحقل فارغاً لتحليل متصفحك أنت.
- انقر «تحليل» (أو «استخدام User-Agent متصفحي»).
- اقرأ صفوف المتصفح والمحرك ونظام التشغيل والجهاز؛ وتحقق من صف الروبوت قبل الوثوق بحركة المرور.
- راجع الملاحظات للاطلاع على التحفظات مثل سلاسل UA المختزلة قبل استخلاص أي استنتاجات.
مزايا محلّل User-Agent
- عائلة المتصفح وإصداره لكل من Chrome وEdge وFirefox وSafari وOpera وSamsung Internet وBrave وVivaldi وUC والمتصفحات المضمّنة في التطبيقات وغيرها
- محرك العرض (Blink وWebKit وGecko وTrident وEdgeHTML) مع مراعاة انفصال Blink عن WebKit بدءاً من Chrome 28
- نظام التشغيل وإصداره مع أسماء Windows المألوفة، وتطبيع الشرطات السفلية في إصدارات iOS/iPadOS، وmacOS، وAndroid، وChrome OS، وتوزيعات Linux، وأجهزة الألعاب، والتلفزيونات
- نوع الجهاز (حاسوب مكتبي، هاتف، جهاز لوحي، تلفاز، جهاز ألعاب، جهاز قابل للارتداء، روبوت) مع الشركة المصنّعة والطراز لأجهزة Android عند توفرهما
- كشف أكثر من 70 زاحفاً وأدوات معاينة الشبكات الاجتماعية وروبوتات الذكاء الاصطناعي وزواحف SEO وخدمات المراقبة والمتصفحات بلا واجهة (headless)
- التعرّف على العملاء البرمجيين (curl وpython-requests وokhttp وGo وPostman وaxios…) بوصفها أدوات لا متصفحات
- ملاحظات حول سلاسل User-Agent المختزلة/المجمّدة وغيرها من حالات الالتباس
مثال على محلّل User-Agent
تحليل سلسلة Chrome حالية على Android
الإدخال:
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Mobile Safari/537.36النتيجة:
Browser: Google Chrome 126.0.0.0 (major 126)
Rendering engine: Blink 126.0.0.0
Operating system: Android 10
Device type: mobile
Is bot: No
Note: Reduced User-Agent (Chrome 101+): only the major version is real; minor/build/patch are frozen to 0.0.0.
Note: Reduced User-Agent: Android version and device model are frozen ("Android 10; K").الأسئلة الشائعة حول محلّل User-Agent
كيف أرى سلسلة User-Agent الخاصة بي؟
اترك حقل الإدخال فارغاً وانقر «تحليل»، أو انقر «استخدام User-Agent متصفحي». تُقرأ السلسلة من navigator.userAgent في متصفحك وتُحلَّل محلياً.
لماذا يُبلغ Chrome عن الإصدار 126.0.0.0 وعن Windows 10 على نظام Windows 11؟
يختزل Chrome سلسلة User-Agent على مراحل: منذ الإصدار 101 لم يعد حقيقياً إلا رقم الإصدار الرئيسي (جُمّدت الأرقام الفرعية ورقما البناء والتصحيح على 0.0.0)، ومنذ الإصدار 107 على أجهزة سطح المكتب والإصدار 110 على Android جُمّدت المنصة أيضاً (Windows NT 10.0، وmacOS 10.15.7، و«Android 10; K»). تنبّه الأداة إلى هذه الحالات؛ ولا تتوفر القيم الدقيقة إلا عبر Client Hints.
ما الروبوتات التي يجري كشفها؟
محركات البحث (Googlebot وBingbot وBaiduspider وYandex وDuckDuckBot وApplebot)، وأدوات معاينة الشبكات الاجتماعية (Facebook وTwitter وLinkedIn وSlack وDiscord وWhatsApp)، وزواحف الذكاء الاصطناعي (GPTBot وClaudeBot وPerplexityBot وCCBot وBytespider)، وزواحف SEO (Ahrefs وSemrush وMJ12)، وخدمات المراقبة والمتصفحات بلا واجهة، إضافة إلى كشف عام احتياطي لكلمات bot/crawler/spider.
لماذا يُبلَّغ عن iPad على أنه macOS؟
منذ iPadOS 13 يرسل Safari على iPad سلسلة User-Agent الخاصة بـ macOS المكتبي افتراضياً. ولا يمكن التمييز بينهما إلا بكشف اللمس عبر JavaScript، لذا تشير الأداة إلى هذا الالتباس.
هل يمكنني الاعتماد على النتيجة في القرارات الأمنية؟
لا. يمكن تزوير سلاسل User-Agent بسهولة. استخدمها للتحليلات والتحسين التدريجي؛ وتحقق من الزواحف عبر DNS العكسي، ولا تستخدم UA للتخويل أبداً.
ملاحظات تقنية
يعتمد التحليل على التعبيرات النمطية (regex) ويُرتَّب من الأكثر تحديداً إلى الأقل: الأدوات أولاً (لأنها تبدأ السلسلة)، ثم الروبوتات، ثم المتصفحات التي تحجب رموزها رموز غيرها (Edge قبل Chrome، وChrome قبل Safari، وCriOS/FxiOS قبل Safari على iOS). ولأن الرمز Safari/6xx في Safari هو رقم بناء WebKit، يؤخذ الإصدار من Version/x.y بدلاً منه.
خضعت جداول قواعد المحرك ونظام التشغيل والجهاز لاختبارات وحدة على أكثر من 30 سلسلة حقيقية، بما فيها سلاسل UA المختزلة والروبوتات التي تنتحل صفة المتصفحات.
المراجع
- User-Agent header — MDNصيغة ترويسة User-Agent والسلاسل التي ترسلها المتصفحات والزواحف الرئيسية.
- RFC 9110: HTTP Semanticsمعاني أساليب HTTP وحقول الترويسات ورموز الحالة والتفاوض على المحتوى، بغضّ النظر عن إصدار البروتوكول.