خطأ HTTP 405 Method Not Allowed

كود الحالة 405 · الفئة 4xx

HTTP

الرسالة الرسمية (كما تظهر على الشاشة): Method Not Allowed

يُبحث عنه أيضًا باسم: error 405, HTTP 405, 405 method not allowed

سلسلة طلب HTTP من المتصفح عبر CDN والوكيل إلى الخادم الأصلي
أخطاء HTTP: حدد أي حلقة في سلسلة الطلب فشلت واقرأ سجلاتها.

ماذا يعني

يعرف الخادم الرابط لكنه لا يقبل طريقة HTTP المستخدمة، مثل إرسال POST إلى نقطة نهاية تسمح بـ GET فقط. يراه الزوار عند إرسال النماذج إلى صفحات مضبوطة بشكل خاطئ، ويراه المطورون عند استدعاء واجهات API بطريقة HTTP خاطئة.

ينطبق على: REST APIs, nginx, Apache, IIS

كيفية إصلاح خطأ HTTP 405 Method Not Allowed

  1. أعد تحميل الصفحة بشكل عادي بدلاً من إعادة إرسال النموذج
  2. عملاء API: راجع التوثيق لمعرفة الطريقة الصحيحة، وانظر إلى ترويسة الاستجابة 'Allow' التي تسرد الطرق المسموح بها
  3. تأكد من أن الرابط دقيق؛ فغياب الشرطة المائلة الأخيرة أو زيادتها قد يوجّه طلب POST إلى معالج الملفات الثابتة
  4. إذا كنت مالك الموقع: تأكد من أن المسار (route) أو المتحكم (controller) يعرّف هذه الطريقة، وأن إعادة التوجيه (301/302) لا تحوّل POST إلى GET
  5. إذا كنت مالك الموقع: في nginx يُرجع إرسال POST إلى ملف ثابت الخطأ 405؛ وجّه الطلب إلى التطبيق بدلاً من ذلك
  6. إذا كنت مالك الموقع على IIS: تأكد من أن WebDAV لا يعترض طلبات PUT وDELETE

سبب حدوثه

يشترط RFC 9110 إرجاع 405 عندما تكون الطريقة معروفة لكنها غير مدعومة للمورد المستهدف، وعلى الخادم أن يسرد الطرق الصالحة في ترويسة Allow. وتشمل الأسباب الشائعة أخطاء التوجيه، ومعالجات الملفات الثابتة، ووحدات WebDAV.

الأسئلة الشائعة

لماذا يُرجع إرسال النموذج الخطأ 405؟

لأن النموذج يرسل POST إلى رابط يسمح بـ GET فقط، وغالباً ما يكون صفحة ثابتة أو مساراً بلا معالج POST.

أخطاء ذات صلة

المصدر: IANA HTTP Status Code Registry · حلول كتبها المحررون وراجعوها (راجع السياسة التحريرية)

آخر تحديث: