یکی از مشکلاتی که اکثر کاربران وردپرس دارند خطای 503 Service Unavailable میباشد که میتواند به دلایل مختلفی در وبسایتهای وردپرسی ایجاد شود. در واقع این خطا ممکن است به دلیل اشکالات مختلفی ایجاد شود که برخی موارد شامل :
- وجود باگ و خطای برنامه نویسی در کدهای قالب و افزونه وردپرس
- ایجاد ناسازگاری در اجرای کدهای PHP به دلیل تغییرات انجام شده روی سرور
- کم بودن میزان منابع هاست و مصرف بیش از حد منابع هاست و CPU در وردپرس
- انجام حملات مخرب روی هاست به صورت DDOS و ..
- ارور 503 در وردپرس به دلیل خطا در کدنویسی افزونه
افزونههای مخرب همیشه باعث مشکلات زیادی برای کاربران وردپرسی میشود. در حقیقت یک افزونهی باگ دار عامل اصلی در ایجاد ارور 503 در وردپرس یا 503 service unavailable میباشد.اگر پس از نصب و یا به روز رسانی افزونهی خاصی وبسایت شما دچار چنین خطایی شد. بدون تردید عامل اصلی ایجاد این خطا افزونهی مربوطه بوده و با حذف و جایگذین کردن افزونه با مورد مشابه میتوانید مشکل را برطرف نمایید.اما اگر نمیدانید کدام افزونه ممکن است باعث به وجود آمدن ارور 503 در وردپرس شده باشد، ابتدا تمام افزونههای موجود بر روی وبسایت وردپرسی خود را به طور کامل غیر فعال نمایید.
برای بررسی بیشتر وارد هاست شوید و روی فایل منیجرکلیک کنید تا به بخش مدیریت فایلها در هاست هدایت شوید. سپس وارد پوشه public_html شده و فایل error_log را بیابید روی فایل راست کلیک کرده و گزینه view را انتخاب کنید تا خطاهای موجود در این فایل را بررسی کنید.
بنابراین در اولین اقدام باید این افزونه را غیرفعال کنید. اگر به پیشخوان وردپرس دسترسی دارید کافی است وارد مسیر افزونهها شده و افزونه مد نظر را غیرفعال کنید. اما اگر امکان دسترسی به پیشخوان وجود ندارد میتوانید وارد هاست شده و به مسیر /public_html/wp-content/plugins/ در File Manager هاست مراجعه کنید و در نهایت نام پوشه افزونه مد نظر را به اسم دیگری تغییر دهید.
برای تغییر نام کافی است پوشه افزونه را انتخاب کرده و بعد از راست کلیک کردن روی پوشه گزینه Rename را انتخاب کرده و به انتهای نام افزونه عبارت دلخواه را افزوده و ذخیره کنید. در این صورت مشکل برطرف شده و دیگر خطای 503 را نخواهید دید.
آموزش فعال کردن نمایش خطا در وردپرس
- غیرفعال کردن افزونهها
اما گاهی اوقات نه تنها به پیشخوان وردپرس دسترسی ندارید بلکه به دلایلی امکان مشاهده فایل error_log را هم ندارید. پس در این صورت باید کلیه افزونهها را از طریق هاست غیرفعال کنید. برای این منظور هم باید به مسیر /public_html/wp-content/ در File Manager هاست مراجعه کرده و پوشه plugins را انتخاب کرده و بعد از راست کلیک کردن روی پوشه گزینه Rename را انتخاب کنید.
این نام میتواند هر نامی باشد به جز plugins که بعد از تغییر نام به دلیل تغییر مسیر پوشه افزونهها در دیتابیس وردپرس کلیه افزونهها از دسترسی خارج شده و به حالت غیرفعال شده تغییر پیدا خواهند کرد و خطای 503 در وردپرس غیرفعال خواهد شد. حالا بعد از اینکه کلیه افزونهها غیرفعال شدند اگر سایت را مشاهده کنید خطای 503 رفع شده است. اما برای اینکه بدونید خطا از کدوم افزونه بوده باید یک به یک هر افزونه را از پیشخوان وردپرس فعال کنید و سپس در هر بار فعال کردن سایت را بررسی کنید و ببینید بعد از فعال کردن کدوم افزونه مجددا خطای 503 نمایش داده خواهد شد تا افزونه را شناسایی و غیرفعال کنید.
آموزش غیر فعال کردن افزونه در وردپرس
- ارور 503 وردپرس به دلیل استفاده از قالب مشکل ساز
مشکل بعدی ممکن است به خاطر قالب ایجاد شده باشد که بخاطر خطا در کدنویسی باعث ایجاد ارور 503 در وردپرس میشود. در این روش هم شما باید قالب سایت خودتان را غیرفعال کنید که مطمئن شوید مشکل از قالب هست یا خیر. برای این منظور هم به همان روشی که برای غیرفعال کردن افزونهها دیدیم باید وارد هاست شده و به مسیر /public_html/wp-content/themes در File Manager هاست مراجعه کرده و پوشه قالبی که در حال استفاده از ان هستید را انتخاب کنید.
سپس روی پوشه راست کلیک کرده و گزینه rename را انتخاب کنید. در پنجره باز شده نام را تغییر داده و ذخیره کنید. در این صورت قالب فعلی سایت غیرفعال شده و یکی از قالبهای پیشفرض وردپرس به عنوان قالب پیشفرض انتخاب خواهد شد.
بعد از غیرفعال کردن قالب سایت یکی از قالبهای پیشفرض وردپرس انتخاب شده و فعال خواهند شد که در این صورت خواهید دید خطای 503 در وردپرس رفع شده است. اما در صورتی که خطا برطرف نشد باید از روشهای بعدی برای رفع خطا استفاده کنید.
- خطا 503 وردپرس به دلیل ناسازگاری در کدهای PHP
گاهی اوقات هم پیش میاد که خطای php باعث ایجاد ارور 503 در وردپرس خواهد شد که مشخص هم نیست که خطای php رخ داده در افزونه، قالب یا هسته وردپرس بوده است. برای اینکه بدونید دلیل این کار از کجا بوده دو راهکار وجود داره که در روش اول باید بر اساس توضیحاتی که برای فایل error_log در روش اول گفتم فایل ارور لاگ هاست را بررسی کنید و ببینید که مشکل از کجاست و مشکل را برطرف کنید.
اما روش دیگری که وجود دارد و با استفاده ازآن میتوانید بهتر متوجه خطای php در هاست شوید استفاده از دیباگ وردپرس هست. با استفاده از دیباگ وردپرس میتوانید خطاهایی که در فایلهای قالب و افزونه وردپرس وجود دارد را مشاهده کرده و برطرف کنید. برای این منظور باید قطعه کدی را در فایل کانفیک وردپرس wp-config.php قرار دهید تا حالت دیباگ فعال شود. برای این منظور وارد هاست شده و روی file manager کلیک کنید. سپس به مسیر public_html رفته و فایل wp-config.php را انتخاب کنید. حالا برای ویرایش این فایل در هاست سی پنل روی فایل راست کلیک کرده و گزینه Edit را انتخاب کنید. سپس کدهای زیر را در بخش define این فایل یعنی بالاتر از خط /*That’s all, stop editing! Happy blogging.*/ قرار داده و ذخیره کنید.
define ('WP_DEBUG', true);
اگر از قبل این کد در فایل قرار دارد اما مقدار آن به جای true روی false قرار دارد باید آن را به حالت true تغییر دهید تا حالت دیباگ در وردپرس فعال شود برای اینکه نتیجه بهتری دریافت کنید، درست در زیر این خط کدهای زیر را هم قرار دهید.
define ('WP_DEBUG_LOG', true);
define ('WP_DEBUG_DISPLAY', false);
@ini_set ('display_errors', 0);
به دلیل اینکه امکان دسترسی به پیشخوان وردپرس و خود سایت در حالتی که با خطای 503 در وردپرس مواجه شدید وجود ندارد صرفا با فعال کردن دیباگ هیچ خطایی به شما نمایش داده نخواهد شد. بنابراین باید حالتهای WP_DEBUG_LOG، WP_DEBUG_DISPLAY و ثابتهای @ini_set را هم فعال کنید.
بعد از ذخیره فایل یک بار سایت خودتون را ریلود کنید. حالا به مسیر /public_html/wp-content/ مراجعه کنید. فایلی با نام debug.log در این پوشه اضافه میشه که با بررسی خطاهای موجود در این فایل میتونید بدانید مشکل ارور 503 در وردپرس به چه دلیلی هست. این فایل کلیه خطاهای موجود در سایت را ذخیره میکند و میتوانید به راحتی با بررسی منشا مشکل را پیدا کنید.
-رفع مشکل مصرف بیش از حد منابع هاست
گاهی هم پیش می آید که به دلیل بازدید بالا یا خطاهای مربوط به کدنویسی هاست شما از منابع زیادی مصرف میکند باید موارد مرتبط بررسی شود تا علت مصرف منابع مشخص و رفع شود.
برای رفع این مشکل میتونید موارد زیر را بررسی نمایید :
-بررسی افزونههای استفاده شده در وردپرس
-بررسی قالب استفاده شده در وردپرس
-بررسی دیتابیس وردپرس و Repair دیتابیس
-بهروزرسانی وردپرس
-استفاده از پیوند یکتا نامناسب
-استفاده بیش از حد از برچسب وردپرس
-استفاده از رسانههایی با حجم بالا در وردپرس
-استفاده از سیستم کش مناسب
-استفاده برنامهریزی درست توسط Cron Job وردپرس
-جلوگیری ارسال اسپم در وردپرس
-وجود چند وبسایت وردپرسی بر روی یک هاست
-کنترل رباتهای جستجوگر
-بازدید بالای سایت
توجه داشته باشید که خطای 503 service unavailable، عمدتا نتیجه وجود کدهای PHP معیوب در افزونه یا قالب است. که با بررسی و یافتن این کدهای مخرب و حذف یا جایگزین نمودن آنها با کدهای سالم میتوانید به راحتی و بدون هیچ دردسری خطای 503 در وبسایت وردپرسی خود را رفع نمایید.
آموزش های مرتبط:
رفع خطای 404 وردپرس (در هاست ویندوز)
رفع خطای cURL Error 28 در وردپرس