قائمة رموز حالة HTTP سريعة وقابلة للبحث
في كل مرة يرسل فيها متصفح، أو تطبيق هاتف محمول، أو زاحف محركات البحث طلباً إلى خادم ويب، يرد الخادم برقم مكون من ثلاث خانات. تخبر رموز حالة HTTP هذه العميل بما حدث بالضبط: ما إذا كان الطلب قد نجح، أو فشل، أو يتطلب مصادقة، أو يحتاج إلى إعادة التوجيه لمكان آخر.
توفر هذه الأداة قاموساً شاملاً وقابلاً للبحث لرموز استجابة HTTP القياسية استناداً إلى مواصفات RFC الرسمية. ولأن القائمة بأكملها تُحمل وتُصفى محلياً داخل متصفحك، فإن عملية البحث تتم بشكل فوري تماماً. لن تحتاج إلى انتظار إعادة تحميل الصفحة لمعرفة الفرق بين رمزي 301 و 302، أو لفهم معنى الخطأ 422.
الفئات الخمس لرموز استجابة HTTP
تُقسم رموز HTTP إلى خمس فئات مختلفة بناءً على الرقم الأول منها. ويُعد فهم هذه الفئات أسرع طريقة لتشخيص مشاكل حركة مرور الويب:
1xx (معلوماتية)
تشير هذه الرموز إلى أن الخادم قد تلقى الطلب ويواصل معالجته. وهي استجابات مؤقتة تتطلب من العميل انتظار الاستجابة النهائية. على سبيل المثال، يُخبر الرمز 100 Continue العميل بالمضي قدمًا وإرسال محتوى الطلب.
2xx (نجاح)
يعني رمز 2xx أن طلب العميل قد تم استلامه، وفهمه، وقبوله بنجاح. الرمز الأكثر شيوعاً هو 200 OK، وهو الاستجابة القياسية لنجاح طلب HTTP. وعند إنشاء سجل جديد عبر واجهة برمجة التطبيقات (API)، قد يظهر لك الرمز 201 Created.
3xx (إعادة التوجيه)
تُخبر هذه الرموز العميل بضرورة اتخاذ إجراء إضافي لإكمال الطلب. ويعني هذا عادةً أن المورد المطلوب قد تم نقله. يُخبر الرمز 301 Moved Permanently محركات البحث بتحديث روابطها، بينما يُشير الرمز 302 Found إلى نقل مؤقت.
4xx (خطأ من العميل)
تعني رموز خطأ HTTP في نطاق 4xx أن المشكلة من جانب العميل. قد يحتوي الطلب على صيغة خاطئة، أو يفتقر إلى المصادقة الصحيحة، أو يطلب مورداً غير موجود. وتكثر هذه الأخطاء عندما يكتب المستخدمون عناوين URL بشكل خاطئ، أو عندما تُرسل عمليات الربط مع API بيانات غير منسقة بشكل صحيح.
5xx (خطأ في الخادم)
يعني رمز 5xx أن الخادم فشل في تنفيذ طلب صحيح. أي أن العميل قام بكل شيء على ما يرام، ولكن الخادم واجه مشكلة داخلية، أو تعطل، أو يعاني من ضغط زائد حالياً.
رموز خطأ HTTP الشائعة التي يجب أن تعرفها
رغم وجود العشرات من الرموز، إلا أن عدداً قليلاً منها يشكل الغالبية العظمى من الأخطاء التي ستواجهها كمطور أو مشرف موقع:
رمز الحالة 404 (غير موجود)
لعلّه الخطأ الأشهر على الإنترنت، ويعني رمز الحالة 404 أن الخادم لم يتمكن من العثور على المورد المطلوب. بالنسبة لأصحاب المواقع، تعتبر مراقبة أخطاء 404 أمراً بالغ الأهمية لتحسين محركات البحث (SEO)، حيث إن الروابط المعطلة تحبط المستخدمين وتهدر ميزانية الزحف.
400 طلب خاطئ
لا يمكن للخادم معالجة الطلب بسبب خطأ من جهة العميل، مثل صيغة طلب غير صحيحة أو توجيه غير صالح. غالباً ما تُرجع واجهات برمجة التطبيقات (APIs) هذا الخطأ عند فقدان معلمة (parameter) مطلوبة.
401 غير مصرح به و 403 محظور
كلاهما يتعلق بصلاحيات الوصول. يعني الخطأ 401 Unauthorized أنه يجب على العميل مصادقة نفسه للحصول على الاستجابة المطلوبة (مثل: مفتاح API مفقود). بينما يعني الخطأ 403 Forbidden أن هوية العميل معروفة، ولكن ليس لديه الأذونات اللازمة للوصول إلى المورد.
500 خطأ داخلي في الخادم
هذا خطأ عام وشامل لأعطال الخادم. ويعني أن الخادم واجه حالة غير متوقعة منعته من تلبية الطلب. عندما ترى الخطأ 500، ستحتاج عادةً إلى التحقق من سجلات التطبيق (logs) الخاصة بالخادم لمعرفة السبب الجذري.
502 بوابة غير صالحة و 503 الخدمة غير متوفرة
يحدث الخطأ 502 Bad Gateway عندما يتلقى خادم يعمل كوكيل (proxy) (مثل Nginx أو موازن الحمل) استجابة غير صالحة من الخادم الرئيسي (upstream server). بينما يعني الخطأ 503 Service Unavailable أن الخادم غير قادر حالياً على التعامل مع الطلب، وعادةً ما يكون ذلك بسبب الضغط الزائد أو توقفه للصيانة.
أفضل الممارسات لتطوير واجهات برمجة التطبيقات (API)
عند إنشاء REST API، يُعد إرجاع رموز حالة HTTP الصحيحة أمراً ضرورياً لتوفير تجربة جيدة للمطورين. إن إرجاع 200 OK عند حدوث خطأ فعلي (ما يُعرف غالباً بـ "تجاهل" الأخطاء) يُجبر العملاء على تحليل نص الاستجابة يدوياً للتحقق مما إذا كان طلبهم قد نجح بالفعل.
استخدم هذا الدليل لاختيار الرمز الأصح دلالياً. على سبيل المثال، استخدم 429 Too Many Requests عندما يتجاوز المستخدم الحد المسموح للطلبات، أو 422 Unprocessable Content عندما تكون بيانات JSON صالحة ولكنها تفشل في اجتياز التحقق من صحة منطق العمل.
إذا كنت تبحث في مشكلات توجيه الخادم، فقد تجد أداة فحص سجلات DNS مفيدة للتحقق من سجلات النطاق، أو أداة محلل User-Agent لفهم العملاء الذين يرسلون الطلبات إلى خادمك. وإذا كنت تحاول إدارة كيفية زحف محركات البحث إلى موقعك لتجنب أخطاء 404، فجرب أداة إنشاء ملف Robots.txt.