آموزش نحوه رفع خطای ۵۰۳ در وردپرس
خطای 503 Service Unavailable در وردپرس یکی از مشکلات شایعی هست که معمولا در بیشتر سایتها رخ میده و مطمئنا تا به حال سایت شما هم چندین بار با این مشکل مواجه شده و یا اینکه حداقل در سایت های دیگه با این خطا مواجه شدید. خطای 503 در وردپرس به دلایل مختلفی میتونه رخ بده که برای رفع ارور 503 در وردپرس باید تک تک این عوامل را بررسی کنید و ببینید مشکل از کجای سایت هست و اونو رفع کنید. معمولا بیشترین دلایلی که باعث بروز ارور 503 در وردپرس میشه شامل موارد زیر هستند.
- وجود باگ و خطای برنامه نویسی در کدهای قالب و افزونه وردپرس
- ایجاد ناسازگاری در اجرای کدهای PHP به دلیل تغییرات انجام شده روی سرور
- کم بودن میزان منابع هاست و مصرف بیش از حد منابع هاست و CPU در وردپرس
- انجام حملات مخرب روی هاست به صورت DDOS
- و…
حالا اگر به هر یک از دلایل بالا ارور 503 در سایت وردپرسی شما ایجاد شده باشه میتونید با راهکارهایی که در این مقاله ابه معرفی اونها میپردازم خطاها را برطرف کنید. در بیشتر موارد با استفاده از راهکارهای ارائه شده حل خواهند شد و اگر با این راهکارها مشکل برطرف نشد به دلیل محدود بودن دسترسی شما به هاست میتونید از میزبانی سایتتون بخواهید تا مشکل را بررسی و مرتفع کنند.
آموزش رفع ارور 503 در وردپرس
ارور 503 وردپرس با پیغامهای مختلفی نمایش داده خواهد شد که دلیل اون هم به نحوه کانفیگ و پیکربندی سرور برمیگرده که در هر نوع کانفیگ و پیکربندی به یک نوع خاصی خطا 503 نمایش داده میشه که در زیر نمونههایی از اون را میبینید.
- 503 Service Unavailable
- Http/1.1 Service Unavailable
- HTTP Server Error 503
- 503 Error
- 503 HTTP Error
- HTTP 503
این خطا به هر شکل از موارد بالا که نمایش داده بشه به حال سایت شما فرقی نمیکنه و با استفاده از راهکارهایی که در این مقاله ارائه میکنم به راحتی میتونید خطا را برطرف کنید.
1. ارور 503 در وردپرس به دلیل خطا در کدنویسی افزونه
افزونههای مخرب در وردپرس و استفاده از افزونههایی که به درستی کدنویسی نشدهاند همیشه بیشترین سهم را در ایجاد خطای 503 در هاست دارند. از طرفی دیگر عدم نصب افزونه از مخزن وردپرس باعث ایجاد تاثیر بدتر از این نظر میشه که برخی با دانلود افزونه از مخازن نامعتبر اقدام به نصب افزونه در وردپرس میکنند که به دلیل وجود کدهای مخرب یا قدیمی باعث ایجاد مشکل 503 در وردپرس میشوند. در صورتی که بعد از نصب، بهروزرسانی یا حذف یک افزونه سایت با خطای 503 مواجه شد شک نکنید که مشکل از افزونهها در وردپرس هست. اما گاهی هم پیش میاد که به دلیل بهروزرسانی نرم افزارهای سرور این خطا بخاطر ناسازگاری در کدهای افزونه ایجاد خواهد شد. پس در موارد بسیار کمی این مشکل به دلیل خطا در کدهای php هم ایجاد میشه.
برای اطمینان بیشتر از این موضوع وارد هاست خودتون شده و روی File Manager کلیک کنید تا به بخش مدیریت فایلها در هاست هدایت شوید. سپس به مسیر /public_html/ مراجعه کرده و به دنبال فایل error_log در هاست خودتون بگردید. سپس در هاست سی پنل روی فایل راست کلیک کرده و گزینه view را انتخاب کنید تا خطاهای موجود در این فایل را بررسی کنید.
همونطور که میبینید در ابتدای هر خط تاریخ و زمان درج شده که باید در بین فایل error_log دنبال زمانی بگردید که درست در همون موقع با خطای 503 در وردپرس مواجه شدید. سپس جزییات را ببینید که مسیر نمایش داده مربوط به چه جایی هست. در اینجا خطایی که برای من پیش اومده بود به دلیل خطا و ایجاد تداخل در افزونه AMP وردپرس بوده که مسیر دقیق فایل و خط مربوط به کد در فایل error_log درج شده که در نهایت اقدام به غیر فعال کردن افزونه amp در وردپرس کردم.
بنابراین در اولین اقدام باید این افزونه را غیرفعال کنید. اگر به پیشخوان وردپرس دسترسی دارید کافیه وارد مسیر افزونهها شده و افزونه مد نظر را غیرفعال کنید. اما اگر امکان دسترسی به پیشخوان وجود نداره میتونید وارد هاست شده و به مسیر /public_html/wp-content/plugins/ در File Manager هاست مراجعه کنید و در نهایت نام پوشه افزونه مد نظر را به اسم دیگری تغییر دهید.
برای تغییر نام کافیه پوشه افزونه را انتخاب کرده و بعد از راست کلیک کردن روی پوشه گزینه Rename را انتخاب کرده و به انتهای نام افزونه عبارت old- یا یک عدد را اضافه کرده و ذخیره کنید. در این صورت مشکل برطرف شده و دیگه خطای 503 را نخواهید دید.
غیرفعال کردن افزونهها
اما گاهی پیش میاد که نه تنها به پیشخوان وردپرس دسترسی ندارید بلکه به دلایلی امکان مشاهده فایل error_log را هم ندارید. پس در این صورت باید کلیه افزونهها را از طریق هاست غیرفعال کنید. برای این منظور هم باید به مسیر /public_html/wp-content/ در File Manager هاست مراجعه کرده و پوشه plugins را انتخاب کرده و بعد از راست کلیک کردن روی پوشه گزینه Rename را انتخاب کنید. حالا به انتهای نام پوشه عبارت old- یا یک عدد را اضافه کنید.
این نام میتونه هر اسمی باشه به جز plugins که بعد از تغییر نام به دلیل تغییر مسیر پوشه افزونهها در دیتابیس وردپرس کلیه افزونهها از دسترسی خارج شده و به حالت غیرفعال شده تغییر پیدا خواهند کرد و خطای 503 در وردپرس غیرفعال خواهد شد. حالا بعد از اینکه کلیه افزونهها غیرفعال شدند اگر سایت را مشاهده کنید خطای 503 رفع شده است. اما برای اینکه بدونید خطا از کدوم افزونه بوده باید یک به یک هر افزونه را از پیشخوان وردپرس فعال کنید و سپس در هر بار فعال کردن سایت را بررسی کنید و ببینید بعد از فعال کردن کدوم افزونه مجددا خطای 503 نمایش داده خواهد شد تا افزونه را شناسایی و غیرفعال کنید.
2. ارور 503 وردپرس به دلیل استفاده از قالب مشکل ساز
مشکل بعدی از سمت قالب رخ خواهد داد که بخاطر خطا در کدنویسی باعث ایجاد ارور 503 در وردپرس میشود. در این روش هم شما باید قالب سایت خودتون را غیرفعال کنید که مطمئن بشید مشکل از قالب هست یا خیر. برای این منظور هم به همون روشی که برای غیرفعال کردن افزونهها دیدیم باید وارد هاست شده و به مسیر /public_html/wp-content/themes در File Manager هاست مراجعه کرده و پوشه قالبی که در حال استفاده از اون هستید را انتخاب کنید.
سپس روی پوشه راست کلیک کرده و گزینه rename را انتخاب کنید. در پنجره باز شده به انتهای نام پوشه قالب عبارت old- یا یک عدد را اضافه کرده و ذخیره کنید. در این صورت قالب فعلی سایت غیرفعال شده و یکی از قالبهای پیشفرض وردپرس به عنوان قالب پیشفرض انتخاب خواهد شد.
استفاده از قالب پیشفرض وردپرس
بعد از غیرفعال کردن قالب سایت یکی از قالبهای پیشفرض وردپرس انتخاب شده و فعال خواهند شد که در این صورت خواهید دید خطای 503 در وردپرس رفع شده است. اما در صورتی که خطا برطرف نشد باید از روشهای بعدی برای رفع خطا استفاده کنید.
3. خطا 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 در وردپرس به چه دلیلی هست. این فایل کلیه خطاهای موجود در سایت را در خودش ذخیره میکنه که میتونید به راحتی با بررسی منشا مشکل را پیدا کنید.
4. خطای 503 به دلیل مشکلات سرور
یکی دیگه از دلایل بروز خطای 503 در وردپرس از سمت سرور هست که به دلیل بهروزرسانی نرم افزارهای مورد نیاز سرور و تغییرات در کانفیگ سرور ایجاد میشوند. از اونجایی که دسترسی به سرور معمولا براتون وجود نداره بنابراین باید منتظر بمونید و با اطمینان به میزبانی وب خودتون فرصت بدین تا با صبر و حوصله کار را به اتمام برسونند و مشکل سایت شما هم برطرف بشه. در صورتی که با استفاده از روشهای سه گانه فوق موفق نشدید خطا را برطرف کنید باید بدونید که مشکل از سرور هست که با کمی منتظر موندن رفع خواهد شد.
رفع مشکل مصرف بیش از حد منابع هاست
گاهی هم پیش میاد که به دلیل بازدید بالا یا خطاهای مربوط به کدنویسی هاست شما از منابع زیادی مصرف میکنه که در صورت عدم رفع مشکل به روشهای سه گانه فوق باید وارد هاست شده و مشابه تصویر زیر از بخش STATISTICS بررسی کرده و ببینید که میزان مصرف از منابع هاست در چه سطحی قرار دارد.
همونطور که در تصویر میبینید در اینجا میزان مصرف از منابع هاست که شامل مصرفت میزان CPU، مصرف میزان رم، تعداد درخواستهای همزمان، تعداد حداکثر افراد که میتونند همزمان در سایت آنلاین باشند و… نمایش داده خواهند شد که با قرار گرفتن در سطح بالا و مصرف بیش از حد به صورت قرمز رنگ نمایش داده میشوند که باید آنها را بررسی کرده و رفع کنید.
برای رفع این مشکل میتونید از مقاله آموزش رفع مشکل استفاده زیاد از منابع CPU در وردپرس استفاده کنید که مفصلا در مورد این موضوع و نحوه کاهش مصرف منابع هاست پرداخته شده است.
محدود کردن دسترسی گوگل وبمستر در crawl کردن سایت
برای ایندکس سایت شما در گوگل خزندههای گوگل که اونها را با عنوان crawler ها میشناسیم درست مثل یک بازدیدکننده وارد سایت شده و کلیه صفحات را برای ایندکس صفحات جدید بررسی میکنند که در مقاله آموزش معرفی سایت وردپرسی به گوگل به این موضوع پرداختم. حالا گاهی پیش میاد که به دلیل تعداد درخواست بالا همین مسئله باعث بالا رفتن منابع در هاست خواهد شد که میتونید از طریق گوگل وبمستر این مورد را کم کنید.
برای این منظور باید وارد گوگل وبمستر خود شده و مشابه تصویر زیر ابتدا چرخ دنده را انتخاب کرده و گزینه site options را انتخاب کنید.
بعد از این مرحله صفحه زیر براتون باز میشه که باید در بخش crawl rate ابتدا گزینه Let Google’s maximum crawl rate را انتخاب کرده و سپس با استفاده از نوار کشیدنی این مقدار را به سمت چپ یعنی low بکشید.
در مقابل تعداد درخواست بررسی در هر ثانیه به همراه بازه زمانی بین بررسی هر درخواست نمایش داده خواهد شد که در نهایت بعد از انتخاب میزان دلخواه روی دکمه save کلیک کنید تا تنظیمات ذخیره شوند.
بدون دیدگاه