وردپرس آنقدر کاربرپسند هست که وقتی خطایی در آن رخ بدهد، در خصوص علت و نحوه رفع آن اطلاعات خوبی به کاربر بدهد. اما این ویژگی در خطای ۵۰۳ وجود ندارد. ارور ۵۰۳ از آن دست خطاهایی است که علت بروز آن میتواند کمی پیچیدهتر از خطاهای دیگر باشد. ضمن آنکه خود وردپرس هم معمولاً سرنخی بابت شیوه رفع آن به شما نمیدهد.
اما ما در این مطلب میخواهیم این کار را انجام دهیم. یعنی به شما بگوییم چگونه خطای ۵۰۳ را برطرف کنیم؟ سپس روشهای رفع ارور ۵۰۳ را در اختیار شما قرار دهیم.
ارور ۵۰۳ چیست؟
خطای ۵۰۳ چیست یا HTTP 503 Service Unavailable چه خطایی است؟ این خطا یکی از خطاهای رایج وردپرس می باشد اگر بخواهیم این خطا را ترجمه کنیم به این معنی است که در حال حاضر نمیتوان به وب سایت شما دسترسی پیدا کرد. زیرا سروری که سایت مورد نظر شما روی آن میزبانی میشود در دسترس نیست.
دلیل این امر میتواند خروج سرور از مدار سرویس دهی باشد. یعنی ممکن است سرور خاموش شده، در حال به روز رسانی است، از دسترس خارج شده، در دست تعمیر است یا به طور کلی اتفاقی رخ داده که اکنون دسترسی به آن امکان پذیر نیست و این موضوع نیاز به تحلیل و بررسی دقیقتری دارد.
در هر حال خطای ۵۰۳ نشان میدهد که سیستم ارائه دهنده سرور اکنون در دسترس نیست. به این معنی که شما نمیتوانید به سایت مورد نظر خود دسترسی داشته باشید و احتمالاً بازگشت سرور به مدار دسترسی با تاخیر زمانی که مدت آن مشخص نیست همراه خواهد بود.
وقتی که ۵۰۳ error رخ میدهد سرور یک هدرفیلد Header Filed یا فیلد سرصفحه Retry-After برای کاربر ارسال کرده و از کاربر درخواست میکند تا طی شدن زمان شمارنده برای ارسال مجدد باز شدن صفحه دست نگه دارد.
یکی از تفاوتهای خطای ۵۰۳ با سایر ارورها ۵۰۰ و ارور ۵۰۲ این است که ۵۰۳ نشان میدهد سایت مورد نظر شما در حال اجراست یا آنلاین است. اما مشکلی پیش آمده که امکان دسترسی به آن وجود ندارد.
نکته آزار دهنده در خصوص خطای ۵۰۳ این است که هیچ اطلاعات خاصی در خصوص این که چطور میتوان این خطا را رفع کرد به شما داده نمیشود. اغلب ما در زمان بروز ارور ۵۰۳ با این پیغام گنگ مواجه میشویم:
” سرویس موقتاً در دسترس نیست، لطفاً بعداً تلاش کنید! “
این پیغام شبیه این است که شما در تماس تلفنی با یک رستوران از دستگاه پیغام گیر بشنوید که ” رستوران فعلاً تعطیل است! ” اما هیچ اطلاعاتی در خصوص این که کی رستوران دوباره باز میشود به شما داده نمیشود.
به طور کلی اگر خیلی خوش شانس باشید وقتی با خطای ۵۰۳ مواجه میشوید که وردپرس سایت مورد نظر شما در حال به روز رسانی باشد. چون در چنین حالتی این خطا به کاربر مراجعه کننده به سایت نشان داده میشود. بدیهی است که وقتی عملیات به روز رسانی وردپرس، که اغلب به صورت خودکار صورت میگیرد، به پایان رسید، این خطا نیز رفع شده و سایت در دسترس قرار خواهد گرفت.
تایم آوت Time out یا زمانی که به سرور سایت دسترسی وجود ندارد معمولاً آنقدر کوتاه است که شما یا کاربری که به سایت شما مراجعه کرده و با خطای ۵۰۳ روبه رو شده متوجه آن نخواهید شد یا حداقل زیاد اذیت نمیشوید. اما وقتی خطای ۵۰۳ طولانی شود، باید در صدد رفع آن برآمد. در این موقع بهتر است با شرکتی که هاست یا سرور اختصاصی ایران و خارج خود را ازا آنها خریداری کرده اید ارتباط برقرار کنید.
چرا طولانی شدن error 503 زنگ خطر مهمی است؟
یکی از پیچیدگیهای ارور ۵۰۳ این است که اگر طولانی شود، نه تنها کاربران امکان دیدن سایت را نخواهند داشت، بلکه خود شما به عنوان مدیر سایت نیز به بخش مدیریت سایت دسترسی ندارید. یعنی امکان باز کردن بخش مدیریت وردپرس برای شما از دست میرود و این یعنی امکان بررسی معضلات سایت و عیب یابی آن با مشکل جدی مواجه میشود.
یکی از مهم ترین دلایلی که ارور ۵۰۳ را باید به جهت آن در سریعترین زمان ممکن حل کنید امکان حملات DDos می باشد. در این نوع حمله به سبب افزایش درخواست ها از سمت سرور موجب از دسترس خارج شدن سایت می شوند.
انواع نمایش خطای ۵۰۳
با توجه به توضیحات فوق که همگی مبنی بر پیچیدگی این ارور بود، در ادامه این مطلب قرار است توضیح دهیم که عموماً خطای ۵۰۳ چرا رخ میدهد؟
دانستن این دلایل که اصلیترین علل بروز این خطا هستند به شما کمک میکنند در زمان مواجه با این خطای فلج کننده، مسیر رفع را از یک جای درست پیگیری کنید.
ترجمه نشده انواع نمایش خطای ۵۰۳ به شکل زیر است:
• ۵۰۳ Service Unavailable
۵۰۳ سرویس در دسترس نیست
• ۵۰۳ Service Temporarily Unavailable
۵۰۳ سرویس به طور موقت در دسترس نیست
• HTTP Server Error 503
خطای سرور HTTP 503
• HTTP Error 503
خطای HTTP 503
• Error 503 Service Unavailable
خطای ۵۰۳ سرویس در دسترس نیست
• The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
به دلیل خرابی ناشی از تعمیر و نگهداری یا مشکلات پیش آمده در ظرفیت سرور، این سرور موقتاً قادر به ارائه سرویس به درخواست شما نیست. لطفاً بعداً دوباره امتحان کنید.
به هر حال شیوه نمایش خطای ۵۰۳ هرچه که باشد به معنای یک زنگ خطر است. یعنی هرچه زودتر و پیش از این که این خطا روی کاربران سایت شما اثر منفی بگذارد، باید برای رفع آن دست به کار شوید.
نحوه رفع خطای ۵۰۳ در وردپرس
چون هرگز نمیتوان مطمئن بود که چه دلیلی باعث خطای ۵۰۳ شده است، بهتر است از متدی درست و مرحله به مرحله در پی رفع این خطا برآمد. در ادامه قرار است پنج روش رفع ارور ۵۰۳ را با هم مرور کنیم:
۱- افزونههای وردپرس خود را بهصورت موقت غیرفعال کنید
عدم سازگاری افزونههای وردپرس یکی از عمدهترین دلایلی است که به سبب آن با خطای ۵۰۳ روبه رو میشویم؛ بنابراین اولین روش برای برطرف کردن این مشکل غیر فعال کردن افزونههای وردپرس است.
چون خطای ۵۰۳ مانع از دسترسی شما به بخش مدیریت وردپرس میشود، برای این مرحله باید از یک سرویس گیرنده FTP استفاده کنید. توصیه ما استفاده از FileZilla است.
وقتی کلاینت FTP شما آماده شد، از طریق آن به وب سایت خود متصل شوید و به بخش root وردپرس بروید. درصورتیکه پوشه روت را پیدا نکردید احتمالاً میتوانید در public_html، html، public، www یا پوشهای همنام با سایت شما آن را پیدا کنید.
این پوشه را باز کنید و به دایرکتوری wp-content بروید. در داخل آن پوشهای به نام plugins را پیدا خواهید کرد. این پوشه شامل ساب دایرکتوریهای جداگانه برای هر یک از افزونههای نصب شده در سایت شماست که میتواند فعال یا غیرفعال باشد.
اکنون کافی است روی پوشه plugins کلیک راست کرده و نام آن را به چیز دیگری تغییر دهید. توصیه میکنیم plugins. ld یا plugins.deactivated را انتخاب کنید تا بتوانید بعداً آن را به راحتی تشخیص دهید.
به این ترتیب وردپرس دیگر نمیتواند پلاگینها را پیدا کند. حالا باید دوباره اقدام به باز کردن سایت خود بکنید. اگر این بار سایت شما باز شد که مسیر دست یابی به مقصر اصلی را پیدا کردهاید. فقط باید سرفرصت مناسب و یکییکی پلاگینها را بررسی کنید تا بدانید دقیقاً کدام مورد با عدم همخوانی خود با وردپرس سبب رخ دادن خطای ۵۰۳ شده است.
۲- قالب وردپرس خود را غیر فعال کنید
اگر در مرحله قبلی موفق به رفع خطای ۵۰۳ نشدید، نوبت غیرفعال کردن قالب وردپرس است.
اما رفع خطا به این شیوه به سادگی غیرفعال کردن پلاگینها نیست. چون وقتی قالب را تغییر میدهید وردپرس به طور پیش فرض به قالب قبلی خود باز نمیگردد. در این حالت ممکن است با خطاهای زیر روبه رو شوید:
در این حالت باید با ورود به phpMyAdmin به دیتابیس وردپرس خود دسترسی پیدا کنید. سپس در بخش wp_options بروید و با تب Serach نام تم فعلی وردپرس خود را جستجو کنید. در قسمت option_value نام تم فعلی خود را خواهید دید.
حالا نوبت آن است که اسم آن را به twentyneteen تغییر دهید.
اکنون دوباره وب سایت خود را بررسی کنید تا ببینید آیا خطای ۵۰۳ برطرف شده است یا خیر؟ اگر مشکل حل شده بود یعنی ارور ۵۰۳ به دلیل بروز مشکل در تم وردپرس شما رخ داده است. برای رفع آن میتوانید تم وردپرس را تغییر دهید یا به آخرین نسخه وردپرس برگردید.
۳- CDN خود را به طور موقت غیرفعال کنید
در برخی از مواقع خطای ۵۰۳ نه به دلیل مشکل در وب سایت شما، بلکه به دلیل شبکه تحویل محتوا (CDN) رخ میدهد. اگر از CDN ( cdn چیست ) استفاده میکنید، یک راه سریع برای فهمیدن اینکه آیا بروز خطا به CDN مربوط است یا خیر این است که آن را به طور موقت غیر فعال کنید.
بسته به اینکه از کدام CDN استفاده میکنید، پروسه غیر فعال کردن آن متفاوت است. ضمن آنکه بسیار دیده شده که Cloudflare باعث ایجاد خطاهای ۵۰۳ میشود. به هر حال برای این که بدانید چطور میتوانید CDN خود را غیر فعال کنید باید به دستورالعمل سایت CDN خود مراجعه کنید.
اگر بعد از غیرفعال کردن CDN متوجه شدید که خطای ۵۰۳ سایت شما هنوز هم پابرجاست، پس باید کار دیگری را امتحان کنید. فقط به یاد داشته باشید که قبل از رفتن به مرحله بعدی CDN خود را فعال کنید.
۴- Heartbeat API وردپرس خود را محدود کنید
Heartbeat وردپرس یک API است که در وردپرس تعبیه شده. وردپرس از Heartbeat برای ذخیره خودکار محتوا، نمایش اعلانهای پلاگین استفاده میکند تا به شما اطلاع دهد که شخص دیگری در حال کار بر روی پستی است که میخواهید به آن دسترسی داشته باشید.
اگر بخواهیم سادهتر توضیح دهیم باید بگوییم درست مانند ضربان قلب که در پس زمینه بدن ما به طور مداوم و بی وقفه در حال کار کردن است، API نیز باید در پس زمینه وردپرس برای عملکرد درست بسیاری از دستورات در حال کارکردن باشد. حال اگر سرور به هر دلیل قادر به برقراری ارتباط با API نباشد، خطای ۵۰۳ رخ خواهد داد.
سریعترین راه برای تعیین اینکه آیا Heartbeat API باعث بروز مشکل است یا خیر؟ غیرفعال کردن موقت آن است. برای انجام این کار، یک بار دیگر از طریق FTP به وب سایت وردپرس خود متصل شوید، و سپس پوشه تمهای فعلی خود را باز کنید و فایل functions.php را در داخل جستجو کنید:
اکنون روی فایل مشخص شده در تصویر بالا کلیک راست کرده و گزینه View/Edit را انتخاب کنید. به این یک ویرایشگر متن باز میشود که باید قطعه کد زیر را به آن اضافه کنید:
add_action( ‘init’, ‘stop_heartbeat’, ۱ );
function stop_heartbeat() {
wp_deregister_script(‘heartbeat’);
{
این سه خط کد به وردپرس میگویند که Heartbeat API را غیرفعال کند. تغییرات را در فایل functions.php ذخیره کنید، آن را ببندید و سعی کنید سایت خود را دوباره باز کنید. اگر مشکل رفع شد پس مسیر خطا در Heartbeat API بوده است. البته نباید Heartbeat API را به طور کامل غیر فعال کنید. بلکه بهتر است فرکانس ضربان را پایین بیاورید. چون بسیاری از مشکلات در اثر نبودن Heartbeat API ایجاد میشوند.
برای پایین آوردن سرعت ضربان در Heartbeat API باید در بخش Stteing وردپرس خود به دنبال گزینه Modify Heartbeat بگردید. سپس با پیدا کردن گزینه Modify Heartbeat سرعت عملکرد را به کمترین عدد ممکن کاهش دهید.
تغییرات را ذخیره کنید و به فایل functions.php اید بازگردید. برای اینکه تغییرات بالا عمل کنند، باید رشته کدی را که قبلاً به این فایل اضافه کرده اید حذف کنید و تغییرات خود را ذخیره کنید.
۵- منابع سرور خود را افزایش دهید
اگر خطای ۵۰۳ با وجود طی کردن مراحل بالا هنوز هم رخ میدهد، احتمال زیادی وجود دارد که این مشکل به دلیل کمبود منابع سرور باشد. به این معنا که باید ظرفیت هاست و سرور خود را ارتقا دهید تا ببینید آیا این مشکل را برطرف میشود یا خیر؟
به یاد داشته باشید که اگر پلن هاست شما جزو پلنهای ارزان یا اقتصادی است این خطا با احتمال بیشتری رخ میدهد. چون در این هاستها تمایل زیادی برای کاهش منابع اختصاصی به هر سایت وجود دارد.
ارتقای پلن و خرید هاست یا سرور یک تصمیم مهم است. کار هوشمندانه این است که اول با خدمات پشتیبانی میزبانی وب سایت خود تماس بگیرید. به آنها شرح دهید که خطای ۵۰۳ برایتان رخ داده و اقداماتی را که تاکنون برای حل آن انجام داده اید با آنها در میان بگذارید. تیم پشتیبانی اغلب میتواند به شما در یافتن علت کمک کند و در مورد اینکه آیا نیاز به ارتقای طرح خود دارید یا خیر، به شما مشاوره میدهد.
آنچه در این مطلب خواندید در خصوص ارور ۵۰۳ و ۵ شیوه برای رفع آن بود. چنانچه هنوز در این خصوص پرسشی دارید که در اینجا به آن پاسخ داده نشده است، آن را در بخش نظرات مطرح کنید تا کارشناسان ما در ایران هاست در اسرع وقت به آن پاسخ دهند.
این محتوا توسط تحریریه ی ایران هاست (ارائه دهنده ی خدمات خرید دامنه ir و com ) ارائه شده است امیدورام از خواندن آن لذت برده باشید.