دعم متخصص | كيفية حل مشكلة خطأ 504 Gateway Timeout
الرئيسية » أخطاء ومشاكل الإستضافات » كيفية حل مشكلة خطأ 504 Gateway Timeout

كيفية حل مشكلة خطأ 504 Gateway Timeout

دعم متخصص | كيفية حل مشكلة خطأ 504 Gateway Timeout

مقدمة

خطأ 504 Gateway Timeout يظهر عندما يتأخر خادم المنشأ (التطبيق/‏PHP/‏قاعدة البيانات) عن الرد ضمن المهلة المتاحة لبوابة عكسية مثل Nginx أو Cloudflare. ستجد هنا أسباب حدوثه، خطوات تشخيص دقيقة، وحلول عملية على مستوى ووردبريس والخادم وشبكات CDN، مع نصائح لمنع تكراره.

فهم خطأ 504 Gateway Timeout

ما هو خطأ 504؟

  • طلب وصل للبوابة (Proxy/Gateway) لكن الرد من الخادم الخلفي تأخر.
  • غالبًا بسبب حمل زائد أو مهلات منخفضة أو استعلامات بطيئة أو تعارض إضافات.

مرجع: وثائق Nginx الرسمية Nginx Docs، ودليل أخطاء 5XX لدى كلاودفلير Cloudflare 5XX.

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

1) حمل/موارد الخادم

  • CPU أو RAM ممتلئة، أو عمليات كثيرة بالتزامن.
  • مهام كرون ثقيلة، أو استيراد/تصدير كبير أثناء الذروة.

2) PHP-FPM/‏Apache/Nginx

  • قيَم مهلة تنفيذ منخفضة (max_execution_time، proxy_read_timeout، request_terminate_timeout).
  • انتهاء عمليات PHP-FPM لكثرة الطلبات (pm.max_children).

3) قاعدة البيانات

  • استعلامات بطيئة، جداول مضخمة، أو قفل جداول.
  • مؤشرات (Indexes) غير مناسبة أو غائبة.

4) الإضافات والقوالب

  • كود ثقيل أو تعارض يستهلك الوقت أثناء التنفيذ.

5) CDN/‏Cloudflare وطبقة الشبكة

  • خطأ في طبقة CDN، أو إعداد SSL/TLS غير ملائم، أو Origin بطيء.

خطوات حل سريعة (Shortlist)

  1. أعد المحاولة بعد 1–2 دقيقة (قد يكون مؤقتًا).
  2. امسح كاش CDN وجرب تعطيله مؤقتًا لعزل السبب (Cloudflare: Pause Site).
  3. ارفع المهلة في Nginx/Apache وPHP وجرّب.
  4. استخدم Query Monitor لاكتشاف الاستعلامات/الهوكات البطيئة.
  5. عطّل الإضافات مؤقتًا وبدّل لقالب افتراضي لاختبار الأداء الأساسي.

تشخيص تفصيلي

1) فحص أداء ووردبريس

  • فعّل السجل: define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);
  • راجع wp-content/debug.log للبحث عن دوال أو استعلامات بطيئة.
  • ثبّت Query Monitor لتحليل زمن القوالب، الهوكات، والاستعلامات.

2) مراقبة الخادم

  • من لوحة الاستضافة راقب CPU/RAM/IO.
  • عبر SSH استخدم top أو htop وvmstat وiostat.

3) قاعدة البيانات

  • تحليل الاستعلامات البطيئة: تفعيل Slow Query Log في MySQL/MariaDB.
  • تنظيف وتحسين الجداول عبر WP-Optimize أو يدويًا.

4) CDN/Cloudflare

  • تحقق من حالة الـOrigin في Cloudflare، امسح الكاش، واضبط SSL إلى Full/Full (Strict) حسب شهادتك.
  • راجع دليل 5XX: Cloudflare 5XX.

حلول إعدادات الخادم

Nginx (مهلات الوكيل)

تحرير /etc/nginx/nginx.conf أو ملف الموقع:

proxy_connect_timeout 300;  proxy_send_timeout 300;  proxy_read_timeout 300;  send_timeout 300;  fastcgi_read_timeout 300;  

ثم أعد التحميل:

sudo nginx -t && sudo systemctl reload nginx  

PHP-FPM

تحرير /etc/php-fpm.d/www.conf (أو المسار المكافئ):

pm = dynamic  pm.max_children = 50  pm.start_servers = 5  pm.min_spare_servers = 5  pm.max_spare_servers = 35  request_terminate_timeout = 300  

وأعد التشغيل:

sudo systemctl restart php-fpm  

Apache/.htaccess (إن لزم)

php_value max_execution_time 300  php_value max_input_time 300  

رفع ذاكرة ووردبريس

قبل سطر /* That's all, stop editing! */ في wp-config.php:

define('WP_MEMORY_LIMIT', '256M');  define('WP_MAX_MEMORY_LIMIT', '512M');  

حلول على مستوى ووردبريس

تعطيل الإضافات والقالب

  • أعد تسمية wp-content/plugins إلى plugins-disabled واختبر.
  • بدّل إلى قالب افتراضي (Twenty Twenty-…) للتأكد أن السبب ليس القالب.

تحسين قاعدة البيانات

  • إزالة Transients قديمة:
    DELETE FROM wp_options WHERE option_name LIKE '%_transient_%';
  • إضافة فهارس ملائمة للجداول كبيرة الحجم إن لزم.

منع تكرار المشكلة

  • تحديثات منتظمة للنواة والإضافات والقوالب (اختبر على Staging أولًا).
  • مراقبة مستمرة عبر خدمات مثل UptimeRobot وتقارير الاستضافة.
  • كاش وCDN مضبوطان جيدًا (تحقق من قواعد الاستثناءات للمناطق الديناميكية).
  • نسخ احتياطية مجدولة واختبار استعادة دوري (راجع: استعادة موقع ووردبريس بعد التعطل).

الأسئلة الشائعة (FAQ)

س: هل 504 مؤقت؟

ج: كثيرًا ما يكون كذلك، لكن استمرار ظهوره يعني حاجة لرفع المهلات/تحسين الاستعلامات ومراجعة الموارد.

س: هل يؤثر 504 على SEO؟

ج: التكرار يؤثر سلبًا على الزحف وتجربة المستخدم؛ الحل السريع ضروري.

س: من أين أبدأ؟

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

نصائح SEO إضافية

  1. استخدم الكلمات المفتاحية طبيعيًا داخل العناوين والفقرات.
  2. أضف روابط داخلية لمقالات ذات صلة:
    إصلاح 500،
    حل 502.
  3. حسّن الوصف التعريفي (Meta Description) ودعم Schema إن أمكن.
  4. اضغط الصور وفعّل الكاش لتحسين السرعة.

عنوان SEO: كيفية حل مشكلة خطأ 504 Gateway Timeout في ووردبريس — دليل عملي 2025

وصف SEO: تعرّف على أسباب وحلول خطأ 504 Gateway Timeout في ووردبريس مع خطوات إعداد Nginx/PHP-FPM وتشخيص الاستعلامات البطيئة ومنع تكرار المشكلة.

الكلمة المفتاحية: خطأ 504 Gateway Timeout

الكلمات المرتبطة: مهلة التنفيذ، Nginx، PHP-FPM، Cloudflare، مشاكل الاستضافة، ووردبريس

التصنيف: أخطاء ومشاكل الاستضافات

الوسوم: ووردبريس، إصلاح الأخطاء، Gateway Timeout، أداء الموقع

هذا المقال جزء من سلسلة الدعم التقني. للمزيد اطّلع على أدلة الأداء والحماية في القسم نفسه.

تواصل معنا الآن للحصول علي فحص مجاني

إذا كان لديك استفسار أو عطل فني تريد حله بشكل عاجل

تواصل معنا الآن لحل مشكلتك في أسرع وقت

مشاركة علي: