جديدالجمعة السوداء: خصم ٥٠٪ على دفعتك الأولى
استكشاف أخطاء ووردبريس

500 خطأ خادم داخلي

حاول خادم الويب إنتاج الصفحة ، وحدث خطأ ما في الداخل ، وأعاد رمز الحالة بدلاً من سبب.

500 Internal Server Error

الإجابة المختصرة

يظهر السبب في سجل أخطاء الخادم لا على الصفحة. اقرأ آخر أسطر السجل قبل تغيير أي شيء: يختلف علاج خطأ 500 الناتج عن خلل في .htaccess عن علاج خطأ 500 الناتج عن خطأ فادح في PHP.

التشخيص

الأسباب الأرجح أولًا.

افحص القائمة بالترتيب. يتيح لك كل فحص تأكيد السبب أو استبعاده قبل تغيير أي شيء، لأن الحلول تختلف والتخمين يكلّف أكثر من تنفيذ أمر للتحقق.

السببكيفية التحققالإصلاح
A مشوه .htaccessإعادة تسمية الملف وإعادة تحميل. إذا أصبح 500 صفحة عمل أو 404 ، كان .htaccess هو السبب.دع WordPress يكتب واحدة نظيفة عن طريق إعادة حفظ الروابط الثابتة. يعد التوجيه من مكون إضافي لا يدعمه الخادم هو السبب المعتاد.
خطأ فادح في PHP لم يستطع المعالج الإبلاغ عنهسجل أخطاء PHP يحتوي على إدخال "خطأ فادح" موقوت لطلبك ، بينما يسجل سجل الوصول 500.تعامل معها على أنها قاتلة: ابحث عن الملف المسمى ، وقم بإلغاء تنشيط المكون الإضافي أو السمة التي تمتلكه.
أذونات ملف خاطئةالدلائل التي ليست 755 أو الملفات التي ليست 644، أو أي شيء المجموعة أو العالم-الكتابة أن المعالج يرفض تنفيذ.إعادة تعيينها. الاستعادة من نسخة احتياطية لم تحافظ على الأوضاع هي السبب المعتاد لخطأ شجرة كاملة في وقت واحد.
ملحق PHP مفقود بعد تغيير الإصداريسمي سجل الخطأ دالة غير محددة بدلاً من مشكلة بناء الجملة - وهي دعوة إلى شيء لا يوفره إنشاء PHP الجديد.تثبيت التمديد أو العودة إلى إصدار PHP الذي كان عليه. تبديل إصدارات PHP هو عندما يظهر هذا.
الخادم نفد من مورد لا يسميه500 متقطعة تحت الحمل وغائبة عندما يكون الموقع هادئا.انظر إلى حدود العملية والذاكرة قبل لمس WordPress. 500 المتقطعة هي قصة قدرة ، وليس قصة رمز.
الدليل

الإصلاح خطوة بخطوة.

تفترض الأوامر توفر WP-CLI والوصول إلى سطر الأوامر. إن لم يتوفرا، تشرح كل خطوة الإجراء كي تنفذه من لوحة التحكم أو عبر SFTP.

  1. اقرأ سجل خطأ الخادم أولاً

    كل شيء آخر في هذه الصفحة هو تخمين حتى يكون لديك. يختلف الموقع ؛ يغطي هذان الاثنان معظم المداخن.

    tail -n 40 /var/log/nginx/error.log
    tail -n 40 /var/log/apache2/error.log
  2. خذ .htaccess من الصورة

    إعادة تسمية واحدة يخبرك ما إذا كانت قواعد إعادة كتابة تشارك، دون حذف أي شيء.

    mv .htaccess .htaccess.off
  3. إذا كان ذلك إصلاحه ، لديك WordPress كتابة واحدة جديدة

    إعادة حفظ الروابط الدائمة يجدد كتلة WordPress تمتلك وتسقط أي شيء آخر تراكم.

    wp rewrite flush --hard
  4. تحقق من الأذونات عبر الشجرة

    أي شيء يمكن كتابته من قبل العالم هو خطر 500 وأمن واحد.

    find . -type d ! -perm 755 | head
    find . -type f ! -perm 644 | head
  5. تأكيد PHP نفسها صحية

    إذا تعذر على PHP تشغيل ملف تافه ، فإن المشكلة أقل من WordPress تمامًا.

    php -v && php -r 'echo "php ok\n";'
على MagicWP

ما تتولاه المنصة عنك.

لا يوجد .htaccess إلى تشوه - nginx يملك إعادة كتابة, ويتم تطبيقها من التكوين بدلا من ملف داخل جذر الويب أن أي ملحق يمكن إلحاق ل. يتم تبديل إصدارات PHP لكل موقع مع مجموعة التمديد التي تذهب معهم, وبالتالي فإن النسخة المفقودة تمديد هذا الخطأ لا البقاء على قيد الحياة التبديل, وسجل الخطأ هو نقرة واحدة من لوحة القيادة بدلا من مسار لديك لتخمين.

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

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

لماذا لا تقول الصفحة ما الخطأ الذي حدث؟
حسب التصميم. 500 هو رمز الحالة لـ "شيء ما فشل داخل الخادم" ، ويتم حجب التفاصيل عن الزوار عمداً لأنه سيصف نظام الملفات للغرباء. يذهب التفصيل إلى سجل الأخطاء بدلاً من ذلك.
هل يختلف 500 عن شاشة بيضاء؟
نعم، والفرق مهم. 500 يعني أن الخادم استجاب بحالة خطأ؛ شاشة بيضاء تعني عادة أنها عادت 200 وجسم فارغ. يشيرون إلى سجلات مختلفة.
كل شيء يعمل ما عدا صفحة واحدة هل يمكن أن تكون 500؟
نعم فعلا. يمكن أن يؤدي قالب واحد أو مسار مكون إضافي واحد إلى الوفاة أثناء عرض كل عنوان URL آخر. تضييقه بواسطة عنوان URL في سجل الوصول بدلاً من افتراض تأثر الموقع بالكامل.
هل يجب علي رفع الحد الأقصى للذاكرة ورؤيته؟
ليس أولاً. هذا يصلح بالضبط أحد الأسباب هنا ويخفي الآخرين عن طريق تغيير التوقيت. اقرأ سطر السجل قبل تغيير القيمة.
أخطاء مرتبطة

إن لم يكن هذا هو السبب.

قد تبدو هذه الأخطاء متشابهة في المتصفح.