in ,

كيفية إصلاح خطأ 500 Internal Server Error على موقع ووردبريس الخاص بك

خطأ 500 Internal Server Error
خطأ 500 Internal Server Error

الخطأ 500 Internal Server Error اللعين. يأتى دائمًا في معظم الأوقات غير المناسبة و يبدو وأنك تركت فجأة تتخبط لمعرفة كيفية الحصول على حل لاعادة موقع ووردبريس مرة أخرى. ؟ ثق بنا ، لقد كنا جميعًا هكذا. فهذا واحد من الأخطاء الأخرى والتي ربما تكون قد شاهدتها أيضًا ، الخطأ المرعب الذي ينشئ عند الاتصال بقاعدة البيانات و شاشة الموت البيضاء المخيفة. ولكن منذ اللحظة التي يهبط فيها موقعك ، فإنك تفقد الزوار والعملاء. ناهيك عن أنها تبدو سيئة لعلامتك التجارية.

سننظر اليوم في إصلاح خطأ 500 Internal Server Error وسنطلعك على بعض الطرق لإعادة موقعك بسرعة عبر الإنترنت. اقرأ المزيد أدناه حول أسباب هذا الخطأ وما يمكنك فعله لمنعه في المستقبل.

ما هو خطأ 500 Internal Server Error؟

عندما تزور موقعًا إلكترونيًا ، يرسل متصفحك طلبًا إلى الخادم المستضيف الذى تتم استضافة الموقع عنده . يأخذ الخادم هذا الطلب ويعالجه ويرسل الموارد المطلوبة مرة أخرى مثل (PHP ، HTML ، CSS ، إلخ) إلى جانب رأس HTTP. يتضمن HTTP أيضًا ما يسمونه رمز حالة HTTP. رمز الحالة هو طريقة لإعلامك بحالة الطلب. يمكن أن يكون رمز الحالة 200 الذي يعني “كل شيء على ما يرام” أو 500 رمز الحالة مما يعني أن هناك خطأ ما قد حدث.

هناك الكثير من الأنواع المختلفة من خطأ 500 Internal Server Error مثل (500 ، 501 ، 502 ، 503 ، 504 ، إلخ) وكلها تعني شيئًا مختلفًا. في هذه الحالة ، يشير خطأ 500 Internal Server Error إلى أن الخادم واجه حالة غير متوقعة حالت دون تنفيذ الطلب (RFC 7231 ، القسم 6.6.1).

فى ووردبريس 500 internal server error
فى ووردبريس 500 internal server error

500 internal server error

نظرًا لوجود العديد من خوادم الويب وأنظمة التشغيل والمتصفحات ، يمكن لخطاء الخادم  500 internal server error  أن يقدم نفسه بطرق مختلفة. لكنهم جميعًا يتواصلون مع نفس الشيء. في ما يلي بعض الاختلافات العديدة المختلفة التي قد تراها على الانترنت:

  • “500 Internal Server Error”
  • “HTTP 500”
  • “Internal Server Error”
  • “HTTP 500 – Internal Server Error”
  • “500 Error”
  • “500 – Internal Server Error”
  • “500 Internal Server Error. Sorry something went wrong.”
  • “500. That’s an error. There was an error. Please try again later. That’s all we know.”
  • “The website cannot display the page – HTTP 500.”
  • شاشة بيضاء تماماً

قد ترى أيضًا هذه الرسالة المرافقة لها:

The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, webmaster@domain.com and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log.

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

قد تحتوي ايضاً العلامات التجارية الكبيرة على رسائل خطأ خاصة بالخادم الداخلي 500 مخصصة ، مثل هذه الرسائل من Airbnb.

Airbnb 500 internal server error
Airbnb 500 internal server error

في ما يلي مثال اخر على خادم آخر و خطأ 500 Internal Server Error فى موقع readme

حتى موقع YouTube الرائع ليس آمنًا من خطأ 500 Internal Server Error الخطأ الداخلي في خادم يوتيوب.

500 Internal Server Error الخطأ الداخلي في خادم يوتيوب
500 Internal Server Error الخطأ الداخلي في خادم يوتيوب

أخطاء 500 تؤثر على السيو SEO فى موقعك

بخلاف أخطاء 503 ، التي تستخدم في وضع الصيانة في ووردبريس وإخبار Google بإعادة التحقق في وقت لاحق ، يمكن أن يكون الخطأ 500 تأثير سلبي على تحسين محركات البحث إذا لم يتم إصلاحه على الفور. إذا كان موقعك معطلاً لمدة 10 دقائق تقريبًا ، ويتم الزحف إليه باستمرار ، فإن الزاحف سيحصل ببساطة على الصفحة التي يتم تسليمها من ذاكرة التخزين المؤقت. أو قد لا تمتلك Google حتى فرصة لإعادة الزحف إليها قبل نسخها احتياطيًا. في هذا السيناريو ، أنت بخير تمامًا

ومع ذلك ، إذا كان الموقع معطلاً لفترة ممتدة من الوقت ، على سبيل المثال 6 ساعات فما فوق ، فقد يرى Google الخطأ 500 باعتباره مشكلة على مستوى الموقع تحتاج إلى المعالجة. هذا يمكن أن يؤثر على تصنيفك. إذا كنت قلقًا بشأن تكرار 500 خطأ ، فيجب عليك معرفة سبب البدء بها. بعض الحلول أدناه يمكن أن تساعد.

كيفية إصلاح خطأ 500 Internal Server Error فى الخادم الداخلي

أين يجب أن تبدأ في استكشاف الأخطاء وإصلاحها عندما ترى خطأ خادم داخلي 500 على موقع ووردبريس الخاص بك؟ في بعض الأحيان قد لا تعرف حتى من أين تبدأ. عادة ما تكون الأخطاء 500 على الخادم نفسه ، ولكن من تجربتنا ، تنشأ هذه الأخطاء من أمرين ، الأول هو خطأ المستخدم (مشكلة جانب العميل) ، والثاني هو أن هناك مشكلة في الخادم. لذلك سنتعمق قليلاً.

تحقق من هذه الأسباب الشائعة وطرق إصلاح الخطأ الداخلي للخادم 500 واستعد وأعمل في وقت قصير.

1. حاول إعادة تحميل الصفحة

قد يبدو هذا واضحًا إلى حد ما للبعض ، ولكن أحد الأشياء الأسهل والأولى التي يجب أن تجربها عند مواجهة خطأ خادم داخلي 500 هو ببساطة الانتظار دقيقة أو نحو ذلك وإعادة تحميل الصفحة (F5 أو Ctrl + F5). يمكن أن يكون المضيف أو الخادم مكتظا ببساطة وسيعود الموقع مباشرة. أثناء الانتظار ، يمكنك أيضًا تجربة متصفح آخر بسرعة لاستبعاد ذلك كمشكلة.

شيء آخر يمكنك القيام به هو لصق الموقع في downforeveryoneorjustme.com . سيخبرك موقع الويب هذا بما إذا كان الموقع معطلاً أو إذا كانت هناك مشكلة على جانبك. تقوم أداة مثل هذه بفحص رمز حالة HTTP الذي تم إرجاعه من الخادم. إذا كان أي شيء بخلاف 200 “كل شيء على ما يرام” ، فسيعرض مؤشرًا لأسفل.

لقد لاحظنا أيضًا أنه في بعض الأحيان قد يحدث ذلك فورًا بعد تحديث المكون الإضافي أو القالب في موقع ووردبريس. عادة ما يكون ذلك على المضيفات التي لا يتم إعدادها بشكل صحيح. ما يحدث هو أنهم يواجهون مهلة مؤقتة بعد ذلك مباشرة. ومع ذلك ، فإن الأمور عادة ما تحل نفسها في بضع ثوان ، وبالتالي فإن كل ما تحتاجه هو اعادة التحميل F5.

2. مسح ذاكرة التخزين المؤقت ( Cache ) فى المتصفح الخاص بك

يعد مسح ذاكرة التخزين المؤقت للمتصفح دائمًا خطوة جيدة أخرى لاستكشاف الأخطاء وإصلاحها قبل الغوص في تصحيح الأخطاء على موقعك بشكل أعمق.

3. تحقق من سجلات الخادم الخاص بك Server Logs

يجب أيضًا الاستفادة من سجلات الأخطاء. فيمكنك بسهولة رؤية الأخطاء في عارض السجلات في لوحة تحكم الخادم الخاص بك. يمكن أن يساعدك ذلك في تضييق نطاق المشكلة بسرعة ، خاصة إذا كانت ناتجة عن مكوّن إضافي على موقعك.

إذا لم يكن لدى مضيفك أداة تسجيل Server Logs، فيمكنك أيضًا إضافة الشفرة التالية إلى ملف wp-config.php لتمكين التسجيل:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

عادة ما تكون السجلات موجودة في الدليل / wp-content. البعض الآخر ، قد يكون لديه مجلد مخصص يسمى “logs”.

سجلات WordPress error logs folder (SFTP)
سجلات WordPress error logs folder (SFTP)

يمكنك أيضًا التحقق من ملفات السجل في Apache و NGINX ، والتي توجد عادةً هنا:

  • Apache: /var/log/apache2/error.log
  • NGINX: /var/log/nginx/error.log

فيمكنك أيضًا الاستفادة من أداة التحليلات اذا كانت متوفره على الخادم المضيف لديك للحصول على تحليل إجمالي عدد الأخطاء وعدد خطأ 500  ومعرفة عدد مرات حدوثها وموعد حدوثها. يمكن أن يساعدك هذا في استكشاف الأخطاء وإصلاحها إذا كانت هذه مشكلة مستمرة ، أو ربما شيء حل نفسه.

إذا تم عرض الخطأ 500 بسبب خطأ فادح في PHP ، فيمكنك أيضًا تجربة إعداد تقارير أخطاء PHP. ببساطة إضافة التعليمة البرمجية التالية إلى الملف بإظهار الخطأ. عادة ما يمكنك تضييق نطاق الملف في علامة تبويب وحدة التحكم في Google Chrome DevTools

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

وقد تحتاج أيضًا إلى تعديل ملف php.ini بما يلي:

display_errors = on

4. خطأ في إنشاء اتصال قاعدة البيانات

يمكن أن يحدث خطأ 500 Internal Server Error في الخادم من خطأ في اتصال قاعدة البيانات. بناءً على متصفحك ، قد ترى أخطاء مختلفة. ولكن كلاهما سيولد رمز حالة HTTP 500 بغض النظر عن سجلات الخادم.

في ما يلي مثال لما تبدو عليه رسالة “خطأ في إنشاء اتصال بقاعدة بيانات” مثل المتصفح. الصفحة بأكملها فارغة لأنه لا يمكن استرجاع أي بيانات لعرض الصفحة ، لأن الاتصال لا يعمل بشكل صحيح. لا يقتصر هذا على كسر الواجهة الأمامية لموقعك فحسب ، بل سيمنعك أيضًا من الوصول إلى لوحة تحكم ووردبريس الخاصة بك.

فلماذا بالضبط يحدث هذا؟ حسنًا ، إليك بعض الأسباب الشائعة أدناه.

  • المشكلة الأكثر شيوعًا هي أن بيانات اعتماد تسجيل الدخول إلى قاعدة البيانات غير صحيحة. يستخدم موقع ووردبريس معلومات تسجيل دخول منفصلة للاتصال بقاعدة بيانات MySQL الخاصة به.
  • قاعدة البيانات الخاصة بك تالفة. مع وجود العديد من الأجزاء المتحركة ذات السمات والمكونات الإضافية والمستخدمين الذين يقومون بحذفها وتثبيتها باستمرار ، يتم أحيانًا إتلاف قواعد البيانات. قد يرجع ذلك إلى وجود جدول مفقود أو تالف بشكل فردي ، أو ربما تم حذف بعض المعلومات عن طريق الخطأ.
  • قد يكون لديك ملفات تالفة في تثبيت ووردبريس الخاص بك. هذا يمكن أن يحدث في بعض الأحيان بسبب المتسللين.
  • مشاكل مع خادم قاعدة البيانات. قد يكون هناك عدد من الأشياء خاطئة في نهاية مضيف الويب ، مثل تحميل قاعدة البيانات بشكل زائد من ارتفاع المرور أو عدم الاستجابة من كثرة الاتصالات المتزامنة. هذا أمر شائع جدًا في الواقع مع المضيفين المشتركين لأنهم يستخدمون نفس الموارد للعديد من المستخدمين على نفس الخوادم.

5. التحقق من المكونات الإضافية ( الاضفات ) و القوالب

يمكن أن تتسبب المكونات الإضافية والمواضيع الخارجية في حدوث خطأ 500 Internal Server Error بسهولة. لقد رأينا جميع الأنواع، من المكونات الإضافية المنزلقة إلى المكونات الإضافية لمحرك الإعلانات. في كثير من الأحيان يجب أن ترى الخطأ فورًا بعد تثبيت شيء جديد أو تشغيل تحديث. هذا هو أحد الأسباب التي تجعلنا ننصح دائمًا باستخدام بيئة التدريج للتحديثات أو على الأقل تشغيل التحديثات واحدة تلو الأخرى. وإلا ، إذا واجهت خطأ 500 داخلي في الخادم فأنت تتدافع فجأة لمعرفة السبب في ذلك.

هناك عدة طرق يمكنك من خلالها تحرّي الخلل وإصلاحه عن طريق إلغاء تنشيط جميع المكونات الإضافية. تذكر أنك لن تفقد أي بيانات إذا قمت ببساطة بإلغاء تنشيط المكون الإضافي. إذا كان لا يزال بإمكانك الوصول إلى المسؤول ، فستكون هناك طريقة سريعة لإجراء ذلك للوصول إلى “المكونات الإضافية” وتحديد “إلغاء التنشيط” من قائمة الإجراءات المجمعة. سيؤدي ذلك إلى تعطيل جميع المكونات الإضافية.

إيقاف تشغيل جميع الإضافات وورد
إيقاف تشغيل جميع الإضافات وورد

إذا لم تتمكن من الوصول إلى صفحة مسئول ووردبريس، يمكنك فتح FTP في خادمك وإعادة تسمية مجلد الإضافات إلى شيء مثل plugins_old. ثم تحقق من موقعك مرة أخرى. إذا كان يعمل ، فستحتاج إلى اختبار كل مكون إضافي واحدًا تلو الآخر. أعد تسمية مجلد الاضفات  مرة أخرى إلى “plugins” ، ثم أعد تسمية كل مجلد مكون إضافي من الداخل إذا كان ، واحدًا تلو الآخر ، حتى تعثر على الاضافة المسببه للعطل.

إعادة تسمية مجلد اضفات ووردبرس
إعادة تسمية مجلد اضفات ووردبرس

وينطبق نفس الأمر على قوالب ووردبريس الخاصة بك. يمكنك استبدال القالب الخاص بك مؤقتًا بقالب من قوالب ووردبريس الافتراضية ، ويعد Twenty Seventeen اختيارًا جيدًا. إذا تمكنت من الوصول إلى صفحة المسؤول ، فانتقل إلى “الموضوعات” في قائمة المظهر ، ويمكنك تنشيط “Twenty Seventeen” ثم قم باختبار موقعك مرة أخرى. إذا ظهر وعمل موقعك بدون اخطاء، فستكون المشكلة ضمن القالب.

بدّل قالب ووردبريس مؤقتًا
بدّل قالب ووردبريس مؤقتًا

إذا لم تتمكن من الوصول إلى صفحة مسئول ووردبريس، فستكون العملية هي نفسها تمامًا مثل المكوّنات الإضافية. إعادة تسمية مجلد wp-content / themes الخاص بك إلى شيء آخر ، مثل themes_old. عندئذٍ يعود ووردبريس إلى أحدث قالب افتراضي ، وهو على الأرجح Twenty Seventeen (إذا لم يكن لديك أي موضوعات أخرى ، يمكنك تنزيل Twenty Seventeen من ووردبريس وتحميله إلى مجلد القوالب الخاص بك. ثم تحقق من موقعك مرة أخرى. إذا نجحت ، فربما يكون القالب الخاص بك يتضمن تعارضًا أو تحديثًا سيئًا ، وفي هذه الحالة قد تحتاج إلى التواصل مع مطور القالب.

تغير مجلد القوالب فى ووردبريس

 

6. إعادة تثبيت نواة ووردبريس

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

7. تحقق من إذن الملفات File Permission

قد يتسبب خطأ في الأذونات مع ملف أو مجلد على الخادم في حدوث خطأ 500 Internal Server Error. فيما يلي بعض التوصيات النموذجية للأذونات عندما يتعلق الأمر بأذونات الملفات والمجلدات في ووردبريس:

  • يجب أن تكون جميع الملفات 644 (-rw-r – r–) أو 640.
  • يجب أن تكون كافة الدلائل 755 (drwxr-xr-x) أو 750.
  • يجب عدم إعطاء أدلة على الإطلاق 777 ، حتى تحميل الدلائل.
  •  يمكن أيضًا ضبط wp-config.php على 440 أو 400 لمنع المستخدمين الآخرين على الخادم من قراءته.

8. الحد من ذاكرة PHP Memory Limit

قد يحدث خطأ 500 Internal Server Error بسبب استنفاد حد ذاكرة PHP على الخادم الخاص بك. يمكنك محاولة زيادة الحد.

9. مشكلة مع ملف .htaccess الخاص بك

لإعادة إنشاء هذا الملف ، يمكنك ببساطة إعادة حفظ الروابط الثابتة في ووردبريس. ومع ذلك ، إذا كنت في منتصف خطأ 500 Internal Server Error  ، فمن المحتمل ألا تتمكن من الوصول إلى مسؤول ووردبريس، لذا فهذا ليس خيارًا. لذلك يمكنك إنشاء ملف .htaccess جديد وإدخال المحتويات التالية. ثم تحميله على الخادم الخاص بك.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

10. ترميز أو أخطاء Syntax Errors في CGI/Perl Script الخاص بك

خطأ 500 Internal Server Error  ناجمة عن أخطاء في CGI و Perl أقل شيوعًا بكثير مما كانت عليه من قبل. على الرغم من أنه لا يزال من الجدير بالذكر ، لا سيما بالنسبة لأولئك الذين يستخدمون cPanel حيث يوجد الكثير من نصوص CGI بنقرة واحدة ما زالت تستخدم. كما يقول AEM على Stack Overflow:

Veteran

الموضوع بواسطه محمد طمان

مرحباً انا محمد طمان مصرى اقيم بروسيا مهتم بتكنلوجيا المعلومات وهذا الموقع من احدى مواقعى على الانترنت اعمل حاليا فى تصميم الجرافيك و تصميم مواقع الوورد بريس بدات رحلتى فى عالم التكنلوجيا و الكمبيوتر منذ عام 1998 , عملت فى مجال الالكترونيات و صيانة اللاب توب و المازربورد لمدة 10 سنوات  إلي أن قررت تغيير مجال عملي عام 2017 عندما توجهت للاقامة بروسيا, أنشأت هذا الموقع لمُشاركة معرفتي وخبراتي التي إكتسبتها علي مدار الأعوام السابقة.

تعليق

اترك رد

    One Ping

    1. Pingback:

    اترك تعليقاً

    لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *