خطای ۵۰۳ Service Unavailable چیست؟
خطای ۵۰۳ Service Unavailable یعنی سرور در لحظه دریافت درخواست، قادر به پردازش آن نیست. برخلاف خطای ۴۰۴ که صفحه وجود ندارد، در خطای ۵۰۳ سرور کاملاً فعال است اما موقتاً از سرویسدهی ناتوان شده. این خطا یکی از شایعترین خطاها در هاست وردپرس است و معمولاً ماهیت موقت دارد.
دلایل بروز خطای ۵۰۳
۱. اضافهبار سرور (Server Overload)
رایجترین دلیل خطای ۵۰۳، مصرف بیش از حد منابع CPU یا RAM سرور است. اگر ترافیک ناگهانی زیادی به سایت وارد شود یا یک اسکریپت پرمصرف اجرا شود، سرور ممکن است از پاسخدهی باز بماند. برای بررسی وضعیت منابع سرور میتوانید از دستور top در SSH استفاده کنید.
۲. تعمیرات و بهروزرسانی سرور
گاهی سرور برای نگهداری یا بهروزرسانی به صورت موقت آفلاین میشود. در این حالت معمولاً بعد از چند دقیقه مشکل خودبخود برطرف میشود.
۳. خرابی سرویسهای وابسته
سرویسهایی مثل PHP-FPM، MySQL یا سرویس وبسرور ممکن است crash کرده باشند. در هاستهای مشترک با دایرکت ادمین، ریستارت این سرویسها معمولاً مشکل را حل میکند.
۴. تنظیم Maintenance Mode در وردپرس
وقتی وردپرس در حال بهروزرسانی است یا افزونهای فایل .maintenance در ریشه سایت ایجاد کرده، سرور ۵۰۳ برمیگرداند. حذف این فایل از File Manager مشکل را برطرف میکند.
۵. محدودیت Worker Process در هاست اشتراکی
در هاستهای اشتراکی، تعداد Worker Processهای همزمان محدود است. اگر سایت به طور همزمان درخواستهای زیادی دریافت کند، خطای ۵۰۳ ظاهر میشود.
روشهای رفع خطای ۵۰۳
روش اول: صبر کردن و رفرش صفحه
اگر مشکل از اضافهبار موقت یا تعمیرات سرور است، چند دقیقه صبر کنید و صفحه را رفرش کنید. اگر خطا پس از ۱۰ دقیقه برطرف نشد، علت دیگری دارد.
روش دوم: حذف فایل .maintenance
وارد File Manager هاست شوید و در ریشه سایت (public_html) دنبال فایل .maintenance بگردید. اگر وجود داشت آن را حذف کنید:
# از طریق SSH
rm /home/username/public_html/.maintenance
روش سوم: غیرفعالسازی افزونهها
اگر خطای ۵۰۳ پس از نصب یا بهروزرسانی یک افزونه ظاهر شده، تمام افزونهها را غیرفعال کنید. برای این کار پوشه wp-content/plugins را به plugins_disabled تغییر نام دهید. مشاوره بیشتر در مقاله راهنمای عیبیابی وردپرس موجود است.
روش چهارم: ریستارت سرویسهای سرور
اگر به SSH دسترسی دارید، سرویسهای مرتبط را ریستارت کنید:
# ریستارت PHP-FPM
systemctl restart php-fpm
# ریستارت آپاچی
systemctl restart httpd
# ریستارت Nginx
systemctl restart nginx
# ریستارت MySQL
systemctl restart mysql
روش پنجم: بررسی لاگهای خطا
لاگهای سرور صادقانهترین منبع برای پیدا کردن علت اصلی هستند. در دایرکت ادمین میتوانید از بخش Error Log لاگهای Apache را ببینید. همچنین از طریق SSH:
tail -f /var/log/httpd/error_log
tail -f /home/username/logs/username.error_log
جلوگیری از بروز خطای ۵۰۳
- از افزونههای کش وردپرس مثل LiteSpeed Cache یا W3 Total Cache استفاده کنید تا بار سرور کاهش یابد.
- منابع سرور را متناسب با ترافیک سایت انتخاب کنید.
- افزونههای غیرضروری را حذف کنید.
- تصاویر را بهینه کنید تا درخواستهای سرور کاهش یابد.
مقایسه خطاهای سرور
| کد | نام | علت اصلی |
|---|---|---|
| ۵۰۰ | Internal Server Error | خطای داخلی سرور |
| ۵۰۲ | Bad Gateway | پاسخ نامعتبر از upstream |
| ۵۰۳ | Service Unavailable | سرور موقتاً در دسترس نیست |
| ۵۰۴ | Gateway Timeout | سرور پاسخ به موقع نداد |
⚡ هاست وردپرس با آپتایم ۹۹.۹٪
با هاست وردپرس میهن هاستینگ خطای ۵۰۳ را فراموش کنید. منابع اختصاصی، مانیتورینگ ۲۴ ساعته و پشتیبانی فنی سریع.
