إن مشكلة الخطأ Error 522 ( ما تعني انتهت مهلة الاتصال ) هي إحدى المشاكل التي يمكن أن تعاني منها المواقع الإلكترونية في بعض الأحيان، حيث تظهر رسالة للزائر عند زيارة الموقع تفيد بحدوث هذا الخطأ، ويفشل في الوصول إلى ما كان يريد الوصول إليه.
ولذلك من أجل المحافظة على تجربة المستخدم مرضية في الموقع، وعدم خسارة الزوار والعملاء، فمن الضروري السعي لمعرفة سبب المشكلة وطريقة حلها، ولهذا فإننا في هذه المقالة سنعرفكم على الأسباب المحتملة لمشكلة الخطأError 522 وطرق حلها.
ما هي مشكلة الخطأ Error 522؟
رسالة الخطأ Error 522 انتهت مهلة الاتصال (Connection Timed Out) هي إحدى رسائل HTTP، وتفيد بعدم نجاح الاتصال مع الخادم بعد أكثر من دقيقة على المحاولة، وهي مشكلة شائعة في مواقع الويب التي تستخدم الكلاود فلير (Cloudflare).
وتظهر رسالة مشكلة الخطأ Error 522 عندما يفشل تحقيق اتصال بين الخادم الأصلي الذي يوجد عليه الموقع وأنظمة الكلاود فلير (Cloudflare)، حيث لا يكون بالإمكان تنفيذ طلب المتصفح خلال فترة زمنية محددة لسبب ما.
والكلاود فلير (Cloudflare) هي شركة تمثل شبكة توصيل محتوى (CDN)، وتقدم العديد من الخدمات التي تحسن من أداء المواقع الإلكترونية وأمانها عبر العمل كوسيط بين الخوادم التي تستضيف المواقع والعملاء الذين يزورونها.
تمتلك شركة Cloudflare الكثير من مراكز البيانات حول العالم، حيث تخزن هذه المراكز بيانات موقعك مؤقتًا، وعندما يطلب أحد المستخدمين زيارة موقعك، تقوم شبكة Cloudflare بتوصيل البيانات اللازمة من أقرب مركز بيانات لها، ما يسهم في تحسين سرعة الموقع.
لكن الكلاود فلير لا يقوم بإرسال بيانات الموقع للزائر دون الاتصال بالخادم الأصلي الذي يوجد عليه الموقع للتأكد من إرسال كامل البيانات اللازمة محدَّثة. عندما تحاول أنظمة الكلاود فلير الاتصال بالخادم الأصلي للموقع ولا ينجح الاتصال، فإن الخطأ 522 يظهر للزائر، ولهذا السبب يدعى أحيانًا هذا الخطأ بـخطأ الكلاود فلير.
اقرأ أيضًا: شرح إعدادات كلاود فلير لتسريع مواقع ووردبريس
أهم أسباب وحلول مشكلة الخطأ Error 522
توجد العديد من الأسباب التي من الممكن أن تؤدي إلى الخطأ Error 522 انتهت مهلة الاتصال. نوضح لكم فيما يلي أبرز هذه الأسباب مع طرق الحل.
السبب (1): خطأ في الخادم الأصلي للموقع
من الممكن أن تظهر رسالة الخطأ 522 نتيجة لخلل في الخادم الأصلي للموقع. يمكن أن يحدث الخطأ عندما يكون عدد الطلبات التي يعمل الخادم على معالجتها كبيرًا جدًا ولا يتناسب مع موارد خطة الاستضافة التي اخترتها لموقعك، مما يؤدي إلى فشل الخادم في معالجة الطلبات ضمن المدة المحددة وبالتالي يحدث الخطأ 522.
وتشمل أبرز المشاكل في الخادم الأصلي التي من ممكن أن تؤدي إلى حدوث الخطأ Error 522 انتهت مهلة الاتصال:
- استخدام كامل وحدة المعالجة المركزية للاستضافة (الخادم).
- الوصول إلى الحد الأقصى من ذاكرة الوصول العشوائي.
- استخدام كامل الباندويث الخاص بخطة الاستضافة.
- زيادة عدد الطلبات التي يتعامل معها الخادم عن الحد المسموح.
الحلول الممكن تجريبها إذا كان سبب الخطأ 522 هو خلل في الخادم
تركز الحلول في حال كان السبب هو خطأ في الخادم على رفع موارد الخادم وتقليل الحمل عليه. يمكنك تجريب الطرق التالية لحل مشكلة الخطأ 522 انتهت مهلة الاتصال إذا كنت تعتقد أن السبب متعلق بالخادم الأصلي للموقع:
- أزل إضافات ووردبريس غير الضرورية: تستخدم إضافات ووردبريس جزء من موارد الخادم، مما يقلل من أدائه ويسبب بعض المشاكل، بما في ذلك الخطأ 522، لذلك حدد الإضافات غير الضرورية، وقم بإزالتها.
- تأكد من أن جودة كود موقعك جيدة: من الممكن أن تؤدي التعليمات البرمجية السيئة إلى زيادة استهلاك وحدة المعالجة المركزية للخادم، الأمر الذي يسبب ضعف في أدائه وظهور الخطأ 522، لذلك تأكد من جودة الأكواد البرمجية التي أضفتها للموقع، أو استخدم أداة مخصصة لفحص كود الموقع مثل W3C Markup Validator.
- ارفع أداء الموقع عبر التخزين المؤقت: قم بتثبيت إضافة للتخزين المؤقت للتقليل من عدد الطلبات على الخادم ورفع سرعة التحميل، إذ يمكن أن يساعد ذلك على حل مشكلة الخطأ Error 522.
- حسّن مختلف الصور في موقعك: استخدم إضافة لتحسين صور موقعك عبر ضغطها وتقليل حجمها، إذ يمكن أن يخفف ذلك العبئ على الخادم ويحل مشكلة الخطأ 522 انتهت مهلة الاتصال. إذا لم تكن تنشر الكثير من الصور في الموقع، فيمكنك تحسين الصور قبل رفعها دون استخدام إضافة ووردبريس.
- فعل ميزة التحميل الكسول (Lazy Load): يساعد التحميل الكسول في تخفيف الطلب على الخادم، لأنه يسهم في تقليل عدد الطلبات التي يقدمها زوار الموقع، إذ لا يتم تحميل بعض أجزاء الصفحة إلا عندما تظهر على شاشة المتصفح.
- قم بترقية استضافتك أو استخدم استضافة مرنة: عندما تجد أن موارد خطة الاستضافة أصبحت لا تلبي جميع احتياجات موقعك، استخدم خطة استضافة أعلى، أو غير نوع الاستضافة إلى سحابية، حيث ترتفع موارد هذا النوع من الاستضافة تلقائيًا عند الحاجة، ما يؤدي إلى منع حدوث الخطأ 522 في الموقع.
- قم بتفعيل الـ KeepAlive: عند تفعيل الـ KeepAlive يبقى الاتصال مفتوحًا بين الكلاود فلير والخادم مما يسهل عملية تبادل البيانات ويقلل من استخدام وحدة المعالجة المركزية وذاكرة الخادم. لتفعيل KeepAlive أضف الكود التالي إلى ملف htaccess الخاص بموقعك الووردبريس:
# BEGIN ENABLE KEEPALIVE
<ifModule mod_headers.c>
Header set Connection keep-alive
</ifModule>
# END ENABLE KEEP ALIVE
إذا لم تكن تعرف كيفية الوصول إلى ملف htaccess وإضافة الكود إليه، فيمكنك مراجعة مقالتنا الشاملة التي تحدثنا فيها عنه (شرح ملف htaccess في الووردبريس وكيفية استخدامه بشكل كامل).
وفي حال لم يكن لديك الوقت الكافي لتنفيذ هذه الحلول بنفسك، يمكنك الاستعانة بإحدى الخدمات المعروضة في صفحة خدمات الووردبريس ضمن موقع خمسات، حيث يمكنك تصفح الخدمات التي يقدمها خبراء الووردبريس هناك أو استخدام مربع البحث لإيجاد خدمة تتلاءم مع متطلباتك واحتياجاتك.
السبب (2): تعارض إضافة ووردبريس
قد يسبب تعارض إحدى إضافات الووردبريس مع أدوات وأكواد الموقع أو مع إضافة أخرى العديد من الأخطاء والمشاكل، ويعد الخطأ Error 522 أحد هذه الأخطاء التي من الممكن أن تحدث نتيجة لذلك.
حل مشكلة الخطأ 522 إذا كان السبب تعارض إضافة
لحل هذه المشكلة لا بد من معرفة أي الإضافات تسبب التعارض وبعد ذلك إزالتها أو مراسلة مطور الإضافة ليساعدك على حل مشكلة التعارض. يمكن أن تتعارض إضافات ووردبريس مع بعضها، أو يمكن أن تتعارض مع قالب الووردبريس المستخدم، ولتحديد جوانب التعارض، اتبع ما يلي:
الخطوة (1): غير قالب الموقع المنشط إلى القالب الافتراضي
قد يكون تعارض إحدى الإضافات مع قالب موقعك هو ما يسبب الخطأ 522، ولكي تتأكد من ذلك قم بتغيير القالب إلى أحد القوالب الافتراضية في الووردبريس. لفعل ذلك توجه إلى صفحة إدارة القوالب، ثم انقر على زر تفعيل الخاص بأحد القوالب الافتراضية.
إذا تم حل المشكلة فعليك إبقاء القالب الافتراضي مفعلًا، أو استخدام قالب آخر مختلف عن القالب الذي كنت تستخدمه سابقًا، أو العثور على الإضافة التي تتعارض مع القالب الذي كنت تستخدمه. إذا لم يتم حل المشكلة أو لم تكن ترغب بتغيير القالب أعد تفعيل القالب المستخدم سابقًا، ثم انتقل إلى الخطوة التالية.
في حال لم تكن تستطيع الدخول إلى لوحة تحكم الووردبريس وتفعيل القالب الافتراضي، فتستطيع استخدام اتصال FTP لفعل ذلك. قم أولًا بالوصول إلى ملفات الموقع عبر FTP كما شرحنا في مقالة (شرح FTP للمبتدئين، وكيف تستخدمه لإدارة ملفات موقعك).
بعد ذلك اذهب إلى مجلد القوالب (wp-content\themes)، ثم أعد تسمية اسم مجلد قالب الووردبريس المنشط حاليًا إلى أي اسم آخر (أضف له مثلًا الرقم 100). بهذا سيتم إلغاء تفعيل قالب الووردبريس المنشط حاليًا وتفعيل القالب الافتراضي مباشرة.
ملحوظة: بعد تغيير اسم مجلد القالب (عن طريق إضافة الرقم 100 إليه على سبيل المثال)، يجب أن تعيد تسمية اسمه إلى الاسم السابق الذي كان يحمله (لن يتم إعادة تنشيط القالب بشكل تلقائي، وسيبقى القالب الافتراضي منشطًا).
الخطوة (2): عطل جميع الإضافات المثبتة
لتعطيل الإضافات انقر على تبويب الإضافات في لوحة تحكم ووردبريس، ثم حدد جميع الإضافات عن طريق النقر على مربع اختيار تحديد الكل. بعد ذلك اختر من القائمة المنسدلة (تنفيذ الأمر) الخيار تعطيل، ثم انقر على زر تطبيق.
وإذا لم يكن بإمكانك الدخول إلى لوحة التحكم لإلغاء تفعيل إضافات ووردبريس، فيمكنك فعل ذلك عبر استخدام اتصال FTP بطريقة مشابهة لما شرحنا في الخطوة السابقة، حيث تقوم أولًا بالوصول إلى ملفات الموقع عبر اتصال FTP، ثم إعادة تسمية مجلدات جميع الإضافات (عبر إضافة الرقم 100 إلى أسماء المجلدات على سبيل المثال).
ملحوظة: بدلًا من تعديل أسماء مجلدات الإضافات، يمكنك نقل هذه المجلدات إلى مجلد جديد تنشئه ضمن مجلد الإضافات نفسه، لكن إذا كنت تشك بأن سبب التعارض هو إضافة معينة، فعندها يفضل أن تستخدم طريقة تغيير اسم المجلد الخاص بها.
الخطوة (3): أعد تفعيل الإضافات واحدةً تلو الأخرى
لمعرفة أي إضافة تسبب التعارض قم بتفعيل الإضافات واحدة تلو الأخرى، وقم بزيارة الموقع بعد كل إضافة حتى تظهر المشكلة، عندها تكون آخر إضافة قمت بتفعيلها هي التي تسبب مشكلة الخطأ 522، ولحلها احذف الإضافة واستخدم إضافة أخرى تقوم بنفس الوظيفة.
لاحظ أنه لإعادة تفعيل الإضافات بالشكل الصحيح، يجب أن تعيد تسمية أسمائها إلى ما كانت عليه، أو تتراجع عن عملية النقل التي قمت بها لإلغاء تفعيلها.
السبب (3): منع عناوين IP الخاصة بالـ Cloudflare
تستخدم استضافة الموقع في بعض الأحيان جدار حماية يمنع عناوين الـ IP الخاصة بخوادم Cloudflare من الوصول إلى بيانات الموقع للحصول عليها وإرسالها إلى الزوار، الأمر الذي يؤدي إلى ظهور رسالة الخطأ 522 انتهت مهلة الاتصال.
يفترض أن يتم السماح لعناوين IP الخاصة بالكلاود فلير بالوصول إلى الموقع بشكل تلقائي، لكن في بعض الأحيان يتم حظرها نتيجة خطأ تقني متعلق بجدار الحماية المستخدم، وعندها سيكون عليك السماح لها بالوصول إلى الاستضافة عبر إدخال كود في ملف htaccess أو بطريقة أخرى.
حل المشكلة عبر السماح لعناوين IP الخاصة بخدمة Cloudflare
يمكن السماح لعناوين الكلاود فلير بالوصول إلى بيانات الموقع بأكثر من طريقة، إذ يمكن أن توفر لوحة تحكم الاستضافة أداة تمكنك من ضبط أذونات الوصول، لكن بالنسبة لمعظم مواقع الووردبريس من الأفضل إدراج كود يسمح لعناوين IP الكلاود فلير في ملف htaccess.
لإدخال كود يسمح لعناوين IP كلاود فلير بالوصول إلى الموقع، افتح ملف htaccess كما وضحنا في المقالة التي أشرنا إليها سابقًا ضمن هذه المقالة، ثم استبدال عنوان الـ IP الوارد في الكود التالي (172.68.0.0) بعنوان IP كلاود فلير الذي يمكنك العثور عليه هنا، ثم أدرج الكود الناتج ضمن الملف واحفظ التغييرات.
<RequireAny>
Require all granted
Require ip 172.68.0.0
</RequireAny>
ملحوظة: إذا أردت السماح لجميع عناوين IP الخاصة بالكلاود فلير (Cloudflare)، فيجب أن تكرر السطر الذي يتضمن عنوان الـ IP في الكود السابق لكل عنوان تود السماح له مع تغيير العنوان إلى العنوان الذي تريده.
أسباب أخرى للخطأ Error 522
يمكن أن يختلف سبب المشكلة Error 522 عن الأسباب التي أوردناها أعلاه، وقد لا يتم حلها حتى بعد تجريب كل الطرق التي تحدثنا عنها. وفي هذه الحالة حيث لا يكون السبب واضحًا، سيتعين عليك الاستعانة بخبير ليقوم بالبحث بشكل متعمق عن سبب المشكلة ويقوم بحلها، أو يعيد تكوين الخادم إذا لم يكن بالإمكان التعرف على السبب.
ولكي تتأكد من اختيار شخص خبير يحل لك مشكلة الخطأ Error 522 بشكل صحيح، يمكنك الاستعانة بمقالتنا (كيف تقوم بتوظيف مستقل محترف يساعدك في تطوير موقعك الووردبريس؟) التي تحدثنا فيها عن أفضل المواقع التي يمكن خلالها الاستعانة بخبراء، وكيفية فعل ذلك.
وهكذا نكون قد وضحنا لكم بشكل مفصل أسباب مشكلة Error 522 المتنوعة والتي يمكن أن تتأثر بالعديد من العوامل بما في ذلك أداء الخادم والإضافات ومنع عناوين IP الكلاود فلير، وشرحنا لكم أفضل الطرق التي يمكن تطبيقها لحل المشكلة ومنع حصولها.
اترك تعليقك