ابحث عن أي رمز حالة HTTP لمعرفة معناه، ومتى ترسله الخوادم، والمواصفة التي تعرّفه. ابحث بالرقم أو الكلمة المفتاحية، وصفِّ النتائج حسب الفئة، وانتقل مباشرةً إلى رمز بعينه عبر رابطه.
نُقل المورد نهائياً إلى URL الوارد في ترويسة Location. تحدّث المتصفحات ومحركات البحث روابطها؛ وقد يغيّر بعض العملاء POST إلى GET عند اتباع إعادة التوجيه.
يوجد المورد مؤقتاً على URL آخر محدد في ترويسة Location. يُستخدم كثيراً بعد تسجيل الدخول ولإعادة التوجيه قصيرة الأجل؛ وتتبع المتصفحات هذا الرابط عادةً باستخدام GET.
لا تزال النسخة المخزنة مؤقتاً صالحة، لذا لا يرسل الخادم محتوى. يظهر هذا الرمز عندما يعيد المتصفح التحقق من ملف مخزّن مؤقتاً باستخدام If-None-Match أو If-Modified-Since.
المورد موجود مؤقتًا على URL آخر، ويجب على العميل إعادة الطلب بالطريقة نفسها وبالمحتوى نفسه. تستخدمه المتصفحات أيضًا لعمليات إعادة التوجيه الداخلية إلى HTTPS عبر HSTS.
نُقل المورد نهائيًا، ويجب على العميل استخدام الطريقة نفسها والمحتوى نفسه على URL الجديد. وهو النظير الدائم للرمز 307، ويمكن استخدامه بأمان لإعادة توجيه طلبات POST.
لا يتضمن الطلب بيانات اعتماد صالحة للمصادقة. وعلى الرغم من اسمه، فإنه يعني «غير مُصادَق عليه»؛ ويرسل الخادم ترويسة WWW-Authenticate توضّح كيفية تسجيل الدخول.
يتجاوز طول URL ما يقبله الخادم للمعالجة. وغالبًا ما يحدث ذلك عندما يرسل نموذج بيانات كثيرة باستخدام GET، أو بسبب حلقة إعادة توجيه تواصل إضافة المعلمات.
مزحة كذبة أبريل من بروتوكول إبريق القهوة للتحكم عبر النص التشعبي لعام 1998 (Hyper Text Coffee Pot Control Protocol): إبريق شاي يرفض تحضير القهوة. يحجز HTTP هذا الرمز ليظل غير مستخدم، لكن بعض الخوادم تعيده كبيضة عيد الفصح أو لرفض الروبوتات غير المرغوب فيها.
أرسل العميل عددًا كبيرًا جدًا من الطلبات خلال فترة زمنية محددة. تستخدمه واجهات API لتحديد معدل الطلبات، وغالبًا ما تتضمن ترويسة Retry-After توضح موعد المحاولة مجددًا.
ليس رمزًا قياسيًا. يستخدمه nginx داخليًا لإغلاق الاتصال من دون إرسال أي استجابة، وغالبًا لإسقاط حركة المرور غير المرغوب فيها؛ ولا يتلقاه العملاء فعليًا.
ليس رمزًا قياسيًا. يسجّله nginx عندما يغلق العميل الاتصال قبل أن يرد الخادم، مثلما يحدث عند إلغاء مستخدم تحميل صفحة بطيئة أو عند انتهاء مهلة لدى العميل.
لم تتلقَّ بوابة أو خادم وكيل استجابة من الخادم الخلفي في الوقت المحدد. يظهر هذا الخطأ عندما يستغرق طلب إلى نظام خلفي وقتًا طويلًا، مثل استعلام قاعدة بيانات طويل.
ليس رمزًا قياسيًا. ترسله Cloudflare عندما تكون شهادة SSL للخادم الأصلي غير صالحة ويكون وضع Full (strict) SSL مفعّلًا.
مُعرّف في Cloudflare
كيفية الاستخدام
أدخل رقم الرمز (مثل 404 أو 5 فقط لعرض جميع أخطاء الخادم) أو كلمة مفتاحية مثل «إعادة التوجيه» أو «انتهاء المهلة».
ضيّق نطاق القائمة باستخدام مرشح الفئة: معلوماتية، نجاح، إعادة توجيه، خطأ من العميل أو خطأ من الخادم.
استخدم «نسخ الرابط» لأي رمز لمشاركة رابط مباشر إليه، مثلاً في تقرير عن خطأ.
كيف تعمل الأداة
يبدأ كل رد HTTP برمز حالة من ثلاثة أرقام. ويحدد الرقم الأول الفئة: 1xx للردود المعلوماتية، و2xx للنجاح، و3xx لإعادة التوجيه، و4xx للأخطاء الناتجة عن الطلب، و5xx للأخطاء من جهة الخادم. أما العملاء الذين لا يتعرفون على رمز محدد، فيتعاملون معه كأنه رمز x00 من فئته؛ لذا يُعامل رمز 4xx غير معروف مثل 400.
ترد الرموز الأساسية في RFC 9110 (دلالات HTTP، 2022)، الذي حل محل RFC 7231 الأقدم. وتأتي رموز أخرى من مواصفات إضافية: WebDAV (RFC 4918)، وRFC 6585 للرموز 428 و429 و431 و511، وRFC 7725 للرمز 451، وRFC 8470 للرمز 425. كما أعاد RFC 9110 تسمية رمزين: أصبح 413 يُسمى الآن “Content Too Large” و422 “Unprocessable Content”، وقد تراهما بالاسمين القديمين “Payload Too Large” و“Unprocessable Entity”.
بعض الرموز التي تظهر في السجلات ليست معايير على الإطلاق. يستخدم nginx الرموز 444 و494–499 داخليًا (ويشير 499 إلى أن العميل توقف عن الانتظار)، ويُصدر Cloudflare الرموز 520–526 عندما يتعذر عليه الحصول على رد مناسب من الخادم الأصلي. وقد وُسمت هذه الرموز في القائمة بأنها «غير قياسية». وتُعرض عبارات السبب (مثل “Not Found”) بالإنجليزية كما وردت في المواصفات؛ إذ لا يرسل HTTP/2 وHTTP/3 سوى الرقم.
أمثلة
301 أم 308 عند نقل موقع؟
كلاهما دائم. استخدم 301 عند نقل صفحة عادي؛ واستخدم 308 عندما يجب على العملاء إعادة إرسال طلبات POST أو PUT إلى عنوان URL الجديد، لأن بعض العملاء يغيّرون POST إلى GET بعد 301.
الفرق بين 401 و403
تعيد API الرمز 401 عند عدم إرسال رمز أو عند إرسال رمز منتهي الصلاحية، لذا ينبغي للعميل تسجيل الدخول. وتعيد الرمز 403 عندما يكون الرمز صالحًا لكن المستخدم لا يملك الإذن، لذا لن يفيد تسجيل الدخول مرة أخرى.
تشخيص خطأ 502 خلف nginx
يعني الخطأ 502 Bad Gateway من nginx أن التطبيق الذي يعمل خلفه لم يرد على نحو سليم. تحقّق مما إذا كانت عملية التطبيق تعمل وراجع سجلّاتها؛ أما 504 فيعني أن التطبيق استغرق وقتًا أطول من اللازم للرد.
الأسئلة الشائعة
ما الفرق بين 404 و410؟
يعني 404 أن الخادم لا يستطيع العثور على المورد، ولا يشير إلى ما سيحدث لاحقًا. أما 410 فيعني أن المورد أُزيل عمدًا ولن يعود، ما يساعد محركات البحث على إزالة عنوان URL من فهرستها بسرعة أكبر.
هل يجب أن يُرجع خطأ التحقق 400 أم 422؟
يُستخدم كلاهما. يناسب 400 الطلبات التي يتعذر على الخادم تحليلها، مثل JSON غير صالح. أما 422 فيناسب الطلبات التي يمكن تحليلها، لكن قيمها غير صالحة، مثل حقل بريد إلكتروني لا يحتوي على @.
هل 418 I'm a teapot رمز حالة حقيقي؟
ظهر هذا الرمز في RFC صدر بمناسبة كذبة أبريل عام 1998. ويحجز RFC 9110 الرمز 418 ليظل غير مستخدم ولا يُخصَّص لشيء آخر. وتُرجعه بعض الخوادم على سبيل المزاح، لكنه لا يحمل معنىً معيارياً.
ما مصدر الرمز 499؟
الرمز 499 خاص بـ nginx. ويظهر في سجلات nginx عندما يغلق العميل الاتصال قبل أن يرسل الخادم استجابة. ولا يتلقى العميل الرمز 499؛ فهو يشير عادةً إلى بطء الاستجابات أو انتهاء المهلة لدى العميل.
هل تتعامل محركات البحث مع 302 كما تتعامل مع 301؟
يشير 302 إلى نقل مؤقت، لذا تُبقي محركات البحث عادةً URL الأصلي مفهرساً في البداية. وإذا استمر 302 مدة طويلة، فقد تتعامل معه Google كأنه إعادة توجيه دائمة. استخدم 301 أو 308 للنقل الدائم.
الخصوصية
القائمة جزء من الصفحة. يجري البحث والتصفية في متصفحك، ولا تُرسل عبارات البحث إلى أي جهة أو تُضمَّن في بيانات التحليلات.