رفع خطای 504 Gateway Timeout در وردپرس (راهنمای کامل و گام‌به‌گام)

آخرین بروزرسانی : ۹ آذر ۱۴۰۴
افزونه المنتور پرو

کاملاً اورجینال با قابلیت آپدیت خودکار در پنل پیشخوان وردپرس

در این نوشته شما می خوانید

خطای 504  در وردپرس از جمله خطاهای سمت سرور می باشد. و در مرورگر امکان دارد به صورت 504 Gateway Timeout یا   HTTP ERROR 504مشاهده شود. اگر با این خطا مواجه شده اید این راهنما را تا انتها مطالعه کنید.

رفع خطای 504 Gateway Timeout در وردپرس (راهنمای کامل و گام‌به‌گام)

چرا خطای 504 Gateway Timeout در مرورگر اتفاق میفتد؟

زمانی که آدرس سایتی را وارد می کنید یک درخواست از سمت مرورگر به سرور سایت فرستاده میشود. اگر سرور پاسخی از منبع بعدی مثل  CDN یا هر سرور در زنجیره ارتباطی خود در زمان مشخص دریافت نکند؛ به دلیل تاخیر در دریافت پاسخ خطای 504 Gateway Timeout را در مرورگر مشاهده می کنید. به زبان ساده تر این خطا زمانی اتفاق میفتد که لود یک صفحه خیلی طول بکشد.

باتوجه به وابستگی سایت های وردپرسی به افزونه ها و فشار بیشتری که روی سرور ایجاد میشود و همینطور استفاده از هاست های اشتراکی و ارزان، بروز این خطا در سایت های وردپرسی خیلی رایج است.

تفاوت خطای 504 با ارورهای 500 و 502

به طور کلی خطاهای دسته‌ی 5XX جزو خطاهای سرور هستند، اما هرکدام از نظر علت فنی و محل بروز مشکل با هم تفاوت هایی دارند. خطای 504  به دلیل تاخیر در پاسخگویی بین سرور اصلی و بک اند سایت بوجود میاد.درحالیکه خطای 502 به دلیل دریافت پاسخ نامعتبر از سرور دیگر به دلیل وب سرور یا استفاده از cloudflare می باشد و خطای 500 نیز به مشکلات داخلی خود سرور مرتبط می باشد.

دلایل بروز خطای 504 Gateway Timeout

  • ترافیک شدید و ناگهانی
  • مشکل در اتصال به سرور
  • محدودیت منابع سرور
  • اشکالات مربوط به دیتابیس
  • عدم موفقیت در اتصال به API یا سرور خارجی

ترافیک شدید و ناگهانی

مشکل در اتصال به سرور

پردازش های طولانی در PHP مثل  کوئری سنگین یا حلقه بی‌پایان پاسخگویی سرور را به تعویق می اندازد.

محدودیت منابع سرور

اگر از هاست اشتراکی استفاده می کنید به دلیل محدودیت منابع هاست، ممکن است هنگام اجرای اسکریپت های سنگین و افزایش ورودی های سایت به دفعات با خطای 504 Gateway Timeout مواجه شوید.

اشکالات مربوط به دیتابیس

عدم ارسال پاسخ از سمت SQL در زمان مجاز یکی از دلایلی است که باعث بروز این خطا می شود. و علت این تعلل می تواند اجرای کوئری های سنگین یا قفل شدن جداول و همینطور سنگین شدن پایگاه داده باشد.

عدم موفقیت در اتصال به API یا سرور خارجی

ممکن است سایت برای انجام عملیاتی مثل پرداخت یا دریافت اطلاعات نیاز به اتصال به یک سرور خارجی دارد اما پاسخ سرور با تاخیر ارسال میشود یا سرور درحال حاضر از دسترس خارج شده.

راه حل رفع خطای 504 در وردپرس

  • رفرش صفحه و پاک کردن کش
  • بررسی اتصال اینترنت و خاموش کردن فیلترشکن و یا غیرفعالسازی پروکسی
  • بررسی افزونه ها و پوسته سایت
  • غیرفعالسازی CDN
  • بهینه سازی دیتابیس
  • افزایش max_execution_time در هاست
  • تماس با پشتیبانی هاست

رفرش صفحه و پاک کردن کش

اگر سرور به دلیل ترافیک و فشار سنگین لحظه ای قادر به پاسخگویی سریع نباشد؛ معمولا صبر و چند دقیقه بعد رفرش یا لود مجدد صفحه مشکل را حل می کند. برای اینکه اطمینان حاصل کنید که مشکل از مرورگر شما نیست؛ پاک کردن کش مرورگر را امتحان کنید و یا در یک مرورگر دیگر صفحه را لود کنید.

بررسی اتصال اینترنت و خاموش کردن فیلترشکن و یا غیرفعالسازی پروکسی

وضعیت اتصال اینترنت یا روشن بودن اکستنشن یا نرم افزار برای دور زدن تحریم ها امکان دارد سایت ها را با خطای 504 رو به رو کند. این مسئله در رابطه با فعال بودن پراکسی مرورگر نیز وجود دارد.

بررسی افزونه ها و پوسته سایت

اگر راه حل های گفته شده تا اینجا کار نکرد؛ در قدم بعدی افزونه ها و پوسته سایت را بررسی کنید. افزونه‌هایی مثل WooCommerce، WP All Import، یا افزونه‌های کش بیشتر امکان دارد که در ایجاد خطای 504 Gateway Timeout نقش داشته باشند اما برای تست بهتر است همه افزونه را غیرفعال یا Deactivate کرده و یکی یکی فعال کنید.

غیرفعالسازی CDN

اگر برای افزایش سرعت وبسایت از CDN استفاده می کنید محتمل ترین دلیل بروز خطای 504 روی سایت شما می تواند بروز مشکل در ارتباط بین سرور اصلی سایت و سرور CDN باشد. در هنگام بروز خطا با غیرفعالسازی CDN از طریق هاست خطا رفع می شود.

بهینه سازی دیتابیس

در صورت سنگین شدن دیتابیس بهینه سازی باعث افزایش سرعت و رفع خطای 504 می شود. برای این کار از راهکارهای بهینه سازی دیتابیس وردپرس استفاده کنید.

افزایش max_execution_time در هاست

در بخش دلایل بروز خطای 504 گفتیم که تمام شدن زمان پاسخ سرور باعث بروز این مشکل می شود. بنابراین می توانید زمان اجرا اسکریپت های php را برای رفع این خطا افزایش دهید. برای این منظور از طریق مدیریت فایل هاست وارد پوشه public_html شوید و فایل user.ini را ویرایش کنید. به دنبال max_execution_time بگردید. مقدار این پارامتر را برابر 300 قرارداده و ذخیره کنید.

تماس با پشتیبانی هاست

در اکثر مواقع با انجام یکی از راه حل های گفته شد خطا رفع می شود اما در صورت عدم رفع، مشکل اصلی کندی شدید هاست می باشد و باید جهت ارتقا منابع هاست با پشتیبانی هاست تماس بگیرید.

جمع بندی

خطای 504 به این معنیست که درخواست شما برای لود صفحه سایت ارسال شده ولی پاسخ دیر رسیده.
در سایت های وردپرسی این تأخیر به دلیل افزونه‌ها، کندی سرور یا مشکل در اتصال به CDN یا دیتابیس اتفاق میفتد. در اکثر مواقع با کمی صبر و یک رفرش ساده خطا رفع میشود اما در صورت ادامه خطا راه حل های گفته شده را اجرا کرده و نتیجه را در بخش نظرات با دیگر کاربران به اشتراک بگذارید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *