رموز الويب وحالة HTTP ضرورية لفهم نتيجة طلب صفحة الويب. هذه الرموز، التي وضعتها مجموعة مهام هندسة الإنترنت (IETF)، يتم إصدارها بواسطة الخادم استجابةً لطلب العميل. توفر هذه الرموز معلومات حيوية حول ما إذا كان الطلب ناجحًا أم حدث خطأ.
إليك نظرة شاملة على بعض رموز حالة HTTP الأكثر شيوعًا ومعانيها.
رموز حالة HTTP الشائعة
1. خطأ 400 (طلب سيئ)
الوصف: يشير رمز الحالة هذا إلى أن الخادم لا يمكنه أو لن يعالج الطلب بسبب خطأ من العميل، مثل بناء الجملة غير الصحيح للطلب.
المثال: إرسال طلب مع بناء جملة غير صحيح أو معلمات استعلام غير صالحة يمكن أن يؤدي إلى خطأ 400.
2. خطأ 401 (غير مصرح)
الوصف: يعني رمز الحالة هذا أن الطلب يتطلب مصادقة المستخدم. يحدث ذلك عادةً عندما يحتاج المستخدم إلى تسجيل الدخول للوصول إلى المورد.
المثال: الوصول إلى منطقة مقيدة من الموقع بدون تسجيل الدخول سيؤدي عادةً إلى خطأ 401.
3. خطأ 403 (ممنوع)
الوصف: يفهم الخادم الطلب لكنه يرفض تفويضه. يمكن أن يحدث هذا إذا لم يكن لدى المستخدم الأذونات اللازمة للوصول إلى المورد.
المثال: الوصول إلى دليل الخادم بدون الأذونات اللازمة سيؤدي إلى خطأ 403.
4. خطأ 404 (لم يتم العثور على)
الوصف: لا يمكن للخادم العثور على المورد المطلوب. يحدث هذا غالبًا عندما يكون عنوان URL غير صحيح أو تم نقل المورد أو حذفه.
المثال: إذا حاول مستخدم الوصول إلى "www.example.com/nonexistentpage"، ولم تكن الصفحة موجودة، سيعيد الخادم خطأ 404.
5. خطأ 405 (طريقة غير مسموح بها)
الوصف: طريقة الطلب معروفة من قبل الخادم ولكن تم تعطيلها ولا يمكن استخدامها.
المثال: محاولة استخدام طريقة POST في نموذج يقبل فقط طلبات GET يمكن أن تؤدي إلى خطأ 405.
أين هو الخطأ 402؟ هل هم موجودون؟
رمز حالة HTTP 402، المعروف باسم "الدفع مطلوب"، لا يُستخدم بشكل شائع أو معترف به من قبل معظم المتصفحات. يشير عادةً إلى مشكلة في معاملة الدفع. يُعتبر هذا الرمز نادرًا ويصنف على أنه "تجريبي" أو لا يزال قيد التطوير.
6. خطأ 500 (خطأ داخلي في الخادم)
الوصف: رسالة خطأ عامة تُعطى عند مواجهة حالة غير متوقعة، ولا توجد رسالة أكثر تحديدًا مناسبة.
المثال: أخطاء تكوين الخادم أو أخطاء التشغيل غير المتوقعة في الشفرة الجانبية للخادم يمكن أن تؤدي إلى خطأ 500.
7. خطأ 502 (بوابة غير صالحة)
الوصف: كان الخادم يعمل كبوابة أو وكيل وتلقى استجابة غير صالحة من الخادم العلوي.
المثال: عندما يعمل الخادم كوكيل والخادم العلوي الذي يصل إليه يعيد استجابة غير صالحة، يتم تشغيل خطأ 502.
8. خطأ 503 (الخدمة غير متوفرة)
الوصف: الخادم غير جاهز للتعامل مع الطلب، غالبًا لأنه معطل للصيانة أو محمل بشكل زائد.
المثال: المواقع التي تتعرض لحجم كبير من الحركة أو تخضع للصيانة قد تعيد رمز الحالة 503.
9. خطأ 504 (انتهاء مهلة البوابة)
الوصف: الخادم غير جاهز للتعامل مع الطلب، غالبًا لأنه معطل للصيانة أو محمل بشكل زائد.
المثال: المواقع التي تتعرض لحجم كبير من الحركة أو تخضع للصيانة قد تعيد رمز الحالة 503.
أين هو الخطأ 501؟ هل هم موجودون؟
عادةً ما يحدث خطأ HTTP 501 عندما يكون الخادم المضيف غير متصل أو غير متاح، مما يعني أنه لا يمكنه تلبية الطلب. يعني رمز استجابة خطأ الخادم هذا أن خادم الويب الخاص بك لا يدعم الوظائف المطلوبة للوصول ولا يتعرف على طريقة الطلب.
10. خطأ 301 (تم النقل بشكل دائم)
الوصف: تم نقل المورد المطلوب بشكل دائم إلى URI جديد، ويوفر الخادم الـ URI الجديد في الاستجابة.
المثال: إذا تم نقل "www.example.com/oldpage" بشكل دائم إلى "www.example.com/newpage"، سيعيد الخادم رمز الحالة 301 مع الموقع الجديد.
11. خطأ 302 (تم العثور عليه)
الوصف: المورد المطلوب يقع مؤقتًا تحت URI مختلف. يخبر العميل باستخدام عنوان URL المقدم للطلبات المستقبلية.
المثال: عندما يتم نقل صفحة مؤقتًا إلى عنوان URL جديد، سيرد الخادم برمز الحالة 302.
12. خطأ 307 (إعادة التوجيه المؤقتة)
الوصف: مشابه لرمز الحالة 302، يشير رمز 307 إلى أن المورد المطلوب يقع مؤقتًا في URI مختلف. ومع ذلك، على عكس 302، فإنه لا يسمح بتغيير طريقة HTTP من POST إلى GET.
المثال: إذا تم نقل "www.example.com/oldpage" مؤقتًا، ويرغب الخادم في ضمان بقاء طريقة الطلب كما هي، سيعيد رمز الحالة 307.
13. خطأ 200 (تمت العملية بنجاح)
الوصف: الطلب قد نجح. قام الخادم بمعالجة الطلب بنجاح، وتم إرجاع المورد في الاستجابة.
المثال: الوصول إلى "www.example.com/home" وتحميل الصفحة الرئيسية بنجاح بدون أي مشاكل سيعيد رمز الحالة 200.
هل هناك أخطاء 300، و 303 - 306؟
تُعتبر رموز حالة HTTP استجابات معيارية توفرها خوادم الويب للإشارة إلى نتيجة طلب العميل. بينما يعرف العديد من الأشخاص رموز الحالة الشائعة مثل 404 (لم يتم العثور على) و500 (خطأ داخلي في الخادم)، هناك عدة رموز أخرى نادرًا ما تُناقش.
على الرغم من أن رموز حالة HTTP مثل 300، 303، 304، 305، و306 أقل شيوعًا من غيرها، إلا أنها تلعب أدوارًا محددة في إدارة كيفية تفاعل العملاء والخوادم. هنا، سنغطي رموز حالة HTTP 300، 303، 304، 305، و306.
300 خيارات متعددة
الوصف: يشير إلى أن المورد المطلوب لديه خيارات متعددة متاحة، ويمكن للمستخدم أو الوكيل المستخدم اختيار أحدها. قد يعني ذلك خيارات تنسيق مختلفة لمورد ما، أو نقاط نهاية مختلفة، أو لغات مختلفة.
الاستخدام: نادرًا ما يُستخدم في الممارسة لأنه يتطلب من العميل اتخاذ قرار بشأن أي نسخة من المورد لاستخدامها.
303 انظر الآخر
الوصف: يشير هذا الرمز إلى أن الاستجابة للطلب يمكن العثور عليها تحت URI مختلف، ويجب على العميل استخدام طريقة GET لاسترداد المورد. يُستخدم غالبًا لإعادة التوجيه بعد عملية PUT أو POST.
الاستخدام: يُستخدم بشكل شائع في تطبيقات الويب لإعادة التوجيه إلى صفحة أخرى بعد إرسال النماذج.
304 لم يتم تعديله
الوصف: يتم إرجاع رمز الحالة هذا إذا لم يتم تعديل المورد منذ آخر طلب. يسمح هذا بالتخزين المؤقت الفعال، حيث يخبر العميل أن النسخة المخزنة لا تزال صالحة.
الاستخدام: يُستخدم على نطاق واسع لأغراض التخزين المؤقت لتقليل عرض النطاق الترددي وأوقات التحميل.
305 استخدم الوكيل (مهمل)
الوصف: يشير هذا الرمز إلى أنه يجب الوصول إلى المورد المطلوب من خلال الوكيل المحدد في الاستجابة.
الاستخدام: تم إهماله بسبب مخاوف أمنية ولم يعد مستخدمًا في تطبيقات الويب الحديثة.
306 تبديل الوكيل (لم يعد مستخدمًا)
الوصف: تم استخدام رمز الحالة هذا في الإصدارات السابقة من HTTP/1.1 ولكنه لم يعد مستخدمًا. كان مخصصًا للإشارة إلى أن الطلبات اللاحقة يجب أن تستخدم الوكيل المحدد.
الاستخدام: محجوز للاستخدام في المستقبل؛ غير مطبق في خوادم أو عملاء الويب الحديثة.
الخلاصة
رموز حالة HTTP جزء حيوي من التواصل عبر الويب، حيث تشير إلى حالة الطلب وتساعد في تشخيص المشكلات واستكشافها. من خلال فهم هذه الرموز، يمكن لمطوري الويب والمسؤولين والمستخدمين إدارة وتحسين التفاعلات عبر الويب بشكل أفضل، مما يضمن تجارب ويب أكثر سلاسة وموثوقية.
لمزيد من المعلومات التفصيلية، يمكنك الرجوع إلى موارد مثل شبكة مطوري موزيلا (MDN) ووثائق IETF.
Comments