آخرین بروزرسانی در تاریخ جولای 25, 2026 توسط PersiaWebAdmin
503 دقیقاً یعنی چه و چرا باید آن را جدی بگیرید؟
وقتی مرورگر شما یک خطای 503 Service Unavailable نشان میدهد، یعنی سرور وب (Apache یا Nginx) زنده است و درخواست شما را دریافت کرده، اما نمیتواند آن را پردازش کند. این خطا یک کد 5xx (خطای سمت سرور) است، اما برخلاف خطای 500 که یک «خطای داخلی ناشناخته» است، 503 معمولاً یک توقف موقت را نشان میدهد.
این تمایز حیاتی است: ارور 503 یعنی سرور از کار نیفتاده، بلکه «فعلاً» نمیتواند پاسخ دهد. این «فعلاً» میتواند از چند ثانیه تا چند ساعت طول بکشد.
مهمترین نکته ای که باید بدانید (و مقالههای دیگر نمیگویند):
در ۸۰٪ خطاهای 503 وردپرس در هاستهای اشتراکی، مشکل از کد معیوب نیست، بلکه از اتمام منابع تخصیصی هاست است. این یعنی سایت شما بازدیدکنندهٔ زیادی دارد یا یک اسکریپت سنگین اجرا میشود و هاست نمیتواند پردازش کند. در این حالت، غیرفعالسازی افزونهها (که در همهٔ آموزشها توصیه میشود) ممکن است موقتاً جواب دهد چون فشار را کم میکند، اما مشکل ریشهای را حل نمیکند و با افزایش مجدد ترافیک، خطا برمیگردد.
| دلیل | توضیح ساده | شدت مشکل |
|---|---|---|
| ۱. اتمام PHP Workers (اتمام پردازشگرهای PHP) | هر بازدیدکننده یک «کارگر مجازی» را اشغال میکند. اگر تعداد بازدیدکنندگان از ظرفیت هاست بیشتر شود، سرور درخواستهای جدید را با 503 رد میکند. | ⭐⭐⭐⭐⭐ (شایعترین) |
| ۲. اسکریپت یا افزونهٔ معیوب (حلقهٔ بینهایت، مصرف زیاد) | یک کد PHP در افزونه یا قالب، آنقدر RAM یا CPU مصرف میکند که کل سرور برای بقیهٔ درخواستها کم میآورد. | ⭐⭐⭐⭐ |
| ۳. بروزرسانی ناتمام (فایل maintenance.) | هنگام بروزرسانی خودکار، وردپرس فایلی به نام .maintenance میسازد. اگر بروزرسانی قطع شود، این فایل میماند و سایت قفل میشود. | ⭐⭐⭐ |
| ۴. محدودیت حافظه (Memory Exhausted) | یک اسکریپت PHP به حافظهٔ بیشتری نیاز دارد، اما memory_limit در هاست پایین است (مثلاً ۶۴M). | ⭐⭐⭐ |
| ۵. حملهٔ DDoS یا ترافیک ناگهانی رباتها | رباتهای مخرب یا یک لینک از یک سایت پربازدید، ناگهان صدها یا هزاران درخواست همزمان به سرور ارسال میکنند. | ⭐⭐ (در سایتهای تازهکار کمتر) |
پیشنهاد مطالعه : راهنمای جامع ساخت صفحه اختصاصی خطای 503 در وردپرس

راهنمای گامبهگام رفع ارور 503 (به ترتیب اولویت)
گام صفر: مطمئن شوید مشکل فقط برای شما نیست
قبل از هر اقدامی، سایت خود را با یک VPN (با لوکیشن دیگر) یا از طریق اینترنت موبایل (با یک اپراتور دیگر) چک کنید. اگر سایت فقط برای شما یا کاربران یک اپراتور خاص قطع است، مشکل از CDN، DNS یا اینترنت شماست، نه سرور. همچنین سایت خود را در ابزار Down For Everyone Or Just Me چک کنید.
گام اول: حذف فایل .maintenance (سریعترین راهحل)
اگر هنگام بروزرسانی وردپرس، قالب یا افزونهها این خطا ظاهر شده، احتمالاً فایل .maintenance مقصر است.
۱. وارد File Manager هاست (cPanel یا DirectAdmin) شوید.
۲. به ریشهٔ سایت (معمولاً public_html) بروید.
۳. در نوار ابزار File Manager، گزینهٔ Show Hidden Files (نمایش فایلهای مخفی) را فعال کنید (چون .maintenance یک فایل مخفی است و ممکن است دیده نشود).
۴. فایل .maintenance را پیدا کنید. اگر وجود دارد، آن را حذف کنید.
۵. سایت را رفرش کنید.
اگر فایل وجود نداشت یا حذف آن جواب نداد، به گام بعدی بروید.
گام دوم: بررسی Resource Usage (پنل هاست) – مهمترین گام مغفول
به جای غیرفعالسازی کورکورانهٔ افزونهها، اول ببینید آیا اصلاً مشکل از منابع سرور است یا خیر.
۱. وارد پنل هاست خود شوید (cPanel).
۲. به دنبال بخشی به نام Resource Usage، CPU and Concurrent Connection Usage، Metrics یا Statistics بگردید.
۳. نمودار یا جدول مصرف منابع را بررسی کنید. اگر مصرف CPU یا RAM (Physical Memory) به سقف مجاز رسیده یا خط قرمز شده، مشکل از محدودیت منابع هاست است. همچنین اگر Entry Processes (تعداد پروسههای همزمان PHP) به حد مجاز (معمولاً ۱۰-۲۰ در هاستهای اشتراکی) رسیده باشد، این دقیقاً یعنی PHP Workers شما پر شده است.
اگر Resource Usage نرمال است: مشکل احتمالاً از یک کد معیوب است. به گام سوم بروید.
اگر Resource Usage روی سقف است: شما یک مشکل زیرساختی دارید. راهحلهای گام هفتم (ارتقای هاست) را در انتهای مقاله ببینید.
پیشنهاد مطالعه : ارور 404 چیست ؟ | ارور 300 چیست ؟
گام سوم: چک کردن لاگهای خطا (Error Logs)
قبل از دستکاری فایلها، ببینید سرور دقیقاً چه خطایی ثبت کرده است.
۱. در cPanel، به بخش Errors یا Error Logs بروید (ممکن است در زیرمنوی Metrics باشد).
۲. آخرین خطاها (۱۰-۲۰ خط آخر) را بررسی کنید. به دنبال عباراتی مثل PHP Fatal error، Allowed memory size of ... exhausted، یا نام یک افزونه/فایل خاص بگردید.
۳. اگر خطا به یک افزونه اشاره میکند (مثلاً wp-content/plugins/woocommerce/...)، مستقیماً همان افزونه را غیرفعال کنید، نه همه را.
۴. اگر خطا میگوید Allowed memory size of X bytes exhausted، به گام پنجم (افزایش حافظه) بروید.
تفسیر خطای مهم:
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted: یعنی اسکریپت شما ۱۲۸ مگابایت رم خواسته ولی هاست فقط ۱۲۸ داده و کافی نبوده. (عدد ۱۳۴۲۱۷۷۲۸ = ۱۲۸MB). بایدmemory_limitرا افزایش دهید.
گام چهارم: غیرفعالسازی تمام افزونهها (روش استاندارد)
اگر لاگها مقصر را نشان ندادند یا دسترسی به لاگ ندارید، نوبت به تست افزونهها میرسد.
۱. از طریق File Manager هاست، به مسیر public_html/wp-content/ بروید.
۲. روی پوشهٔ plugins کلیک راست کرده و Rename را بزنید.
۳. نام آن را به plugins_old تغییر دهید. این کار تمام افزونهها را بدون حذف غیرفعال میکند.
۴. سایت خود را چک کنید. اگر سایت باز شد، مشکل از یکی از افزونههاست.
یافتن افزونهٔ مقصر:
۱. نام پوشه را دوباره به plugins برگردانید.
۲. داخل پوشهٔ plugins شوید. پوشههای افزونهها را یکییکی (یا گروههای ۵ تایی) به نام دیگری تغییر دهید. هر بار سایت را چک کنید تا خطا برگردد. آخرین افزونهای که با غیرفعال شدنش سایت درست شده، مقصر است.
۳. افزونهٔ معیوب را حذف کرده و جایگزین مناسب نصب کنید.
گام پنجم: غیرفعالسازی قالب (Theme)
اگر افزونهها مقصر نبودند، قالب را تست کنید.
۱. به مسیر public_html/wp-content/themes/ بروید.
۲. پوشهٔ قالب فعال خود را پیدا کنید و نام آن را تغییر دهید (مثلاً mytheme_old).
۳. وردپرس بهطور خودکار به آخرین قالب پیشفرض (مثلاً Twenty Twenty-Four) سوئیچ میکند. اگر سایت باز شد، مشکل از قالب شماست.
گام ششم: افزایش حافظه و زمان اجرای PHP (سه تنظیم حیاتی)
اگر مشکل از محدودیت حافظه یا زمان اجراست، سه مقدار را در فایل wp-config.php افزایش دهید. این فایل در ریشهٔ سایت شماست.
قبل از خط /* That's all, stop editing! Happy publishing. */ این سه خط را اضافه کنید:
define('WP_MEMORY_LIMIT', '256M');
@ini_set('max_execution_time', 300);
@ini_set('max_input_time', 300);
WP_MEMORY_LIMIT: حافظهٔ PHP را به ۲۵۶ مگابایت افزایش میدهد.max_execution_time: زمان اجرای اسکریپتها را از ۳۰ ثانیه پیشفرض به ۳۰۰ ثانیه (۵ دقیقه) افزایش میدهد. آپلود فایلهای بزرگ یا پردازشهای سنگین ووکامرس زمان بیشتری نیاز دارند.max_input_time: زمان مجاز برای دریافت داده (مثلاً آپلود فایل) را افزایش میدهد.
توجه: اگر هاست شما ini_set را غیرفعال کرده باشد، این تنظیمات اعمال نمیشوند. در این صورت، از طریق MultiPHP INI Editor در cPanel (بخش Software) یا با ساخت فایل php.ini در ریشهٔ سایت مقادیر را تنظیم کنید:
memory_limit = 256M max_execution_time = 300 max_input_time = 300
گام هفتم: غیرفعالسازی موقت CDN (Cloudflare / ArvanCloud)
اگر از CDN استفاده میکنید، این سرویس بین کاربر و سرور شما قرار میگیرد. گاهی خطای 503 را CDN نشان میدهد، نه سرور شما.
در Cloudflare:
۱. وارد داشبورد Cloudflare شوید.
۲. دامنهٔ خود را انتخاب کنید.
۳. به تب Overview بروید.
۴. گزینهٔ Pause Cloudflare on Site را پیدا کرده و کلیک کنید. (این کار CDN را موقتاً غیرفعال میکند و ترافیک مستقیم به سرور میرود.)
۵. سایت را چک کنید. اگر باز شد، مشکل از تنظیمات Cloudflare یا عدم دسترسی Cloudflare به سرور شماست.
در ArvanCloud:
۱. به داشبورد ArvanCloud بروید.
۲. به بخش تنظیمات دامنه بروید و ابر خاکستری (غیرفعال کردن CDN) را برای رکوردهای A و CNAME تنظیم کنید.
گام هشتم: فعالسازی WP_DEBUG (نمایش خطای دقیق)
اگر هنوز مشکل حل نشده و خطای دقیق را نمیبینید، حالت دیباگ وردپرس را فعال کنید تا خطاها به جای صفحهٔ سفید، نمایش داده شوند.
در فایل wp-config.php، خط زیر را پیدا کنید (اگر وجود ندارد، خودتان اضافه کنید):
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
WP_DEBUG: حالت دیباگ را فعال میکند.WP_DEBUG_LOG: خطاها را در فایلwp-content/debug.logذخیره میکند (بدون نمایش به کاربر).WP_DEBUG_DISPLAY: از نمایش خطاها در صفحه جلوگیری میکند (برای امنیت).
پس از فعالسازی، سایت را رفرش کنید و سپس فایل wp-content/debug.log را در File Manager باز کنید. خطای دقیق PHP در این فایل ثبت میشود.
گام نهم (آخرین راهحل): تماس با پشتیبانی هاست
اگر هیچکدام از موارد بالا جواب نداد، یک تیکت حرفهای به پشتیبانی هاست بزنید. برای اینکه سریعتر به نتیجه برسید، این اطلاعات را در تیکت بنویسید:
«سایت من با خطای 503 مواجه شده است. لطفاً موارد زیر را بررسی کنید:
۱. آیا PHP Workers یا Entry Processes به سقف خورده است؟
۲. آیا فایروال سرور (ModSecurity) درخواستها را بلاک کرده است؟
۳. لاگ خطای PHP را برای نام سایت من بررسی کنید و علت دقیق فیتال ارور را بفرمایید.
۴. آیا محدودیت I/O یا IOPS روی هاست من فعال و پُر شده است؟
مسیر سایت: public_html/ — پیشاپیش متشکرم.»
تفاوت 503 با خطاهای مشابه (تشخیص سریع)
| خطا | معنی | تقصیر کیست؟ |
|---|---|---|
| 503 Service Unavailable | سرور موقتاً نمیتواند پاسخ دهد. | سرور/هاست |
| 500 Internal Server Error | یک خطای داخلی ناشناخته در سرور. معمولاً مشکل از .htaccess یا کد PHP. | معمولاً کد معیوب |
| 504 Gateway Timeout | سرور اصلی پاسخی از یک سرور بالادستی (مثل PHP-FPM یا یک پروکسی) دریافت نکرد. | معمولاً PHP-FPM یا محدودیت زمانی |
| 502 Bad Gateway | سرور بالادستی یک پاسخ نامعتبر فرستاده. | معمولاً PHP-FPM crash کرده |
| 429 Too Many Requests | کاربر (IP) درخواستهای زیادی فرستاده و Rate Limit شده. | کاربر/ربات |
| صفحهٔ سفید (White Screen of Death) | خطای PHP که نمایش خطا غیرفعال است. | کد PHP معیوب |
اگر مطمئن نیستید خطای شما 503 است یا چیز دیگر، یک ترفند ساده: سایت خود را در GTmetrix یا Pingdom تست کنید. این ابزارها کد وضعیت HTTP دقیق را به شما نشان میدهند.
پیشگیری: چطور از شر ارور 503 برای همیشه خلاص شویم؟
- ارتقای هاست: اگر مدام با محدودیت PHP Workers مواجه میشوید، یعنی سایت شما از هاست اشتراکی بزرگتر شده است. وقت ارتقا به یک VPS مدیریتشده یا هاست ابری رسیده است.
- نصب افزونهٔ Cache: یک افزونهٔ کش قوی مثل WP Rocket یا LiteSpeed Cache نصب کنید. کش، درخواستهای PHP را به فایلهای استاتیک HTML تبدیل میکند و فشار روی PHP Workers را تا ۹۰٪ کاهش میدهد.
- غیرفعالسازی WP-Cron و استفاده از Cron واقعی: وردپرس یک سیستم زمانبندی داخلی (WP-Cron) دارد که در هر بازدید اجرا میشود و میتواند منابع را هدر دهد. در
wp-config.phpاین خط را اضافه کنید:define('DISABLE_WP_CRON', true);سپس یک Cron Job واقعی در هاست تنظیم کنید تا هر ۱۵ دقیقهwp-cron.phpرا اجرا کند. - بهینهسازی دیتابیس: با افزونههایی مثل WP-Optimize، دیتابیس را از دادههای اضافی (بازبینیها، اسپمها، ترنزینتها) پاکسازی کنید.
- بکاپ منظم: همیشه قبل از بروزرسانیهای بزرگ، یک بکاپ کامل داشته باشید.
پیشنهاد مطالعه : مزرعه لینک چیست ؟
چکلیست رفع ارور 503 (همراه داشته باشید)
- □ سایت را با VPN یا اینترنت موبایل چک کردم تا مطمئن شوم مشکل فراگیر است.
- □ فایل
.maintenanceرا در ریشهٔ سایت جستجو و در صورت وجود حذف کردم. - □ پنل هاست را باز کردم و Resource Usage را بررسی کردم (آیا CPU/RAM/Entry Processes پُر شده؟).
- □ Error Logs را در cPanel بررسی کردم و خطای PHP Fatal را پیدا کردم.
- □ در صورت عدم یافتن خطای خاص، پوشهٔ
pluginsرا بهplugins_oldتغییر نام دادم. - □ اگر سایت باز نشد، پوشهٔ قالب فعال را تغییر نام دادم.
- □ در
wp-config.php،WP_MEMORY_LIMITرا روی ۲۵۶M وmax_execution_timeرا ۳۰۰ تنظیم کردم. - □ فایل
php.iniرا با مقادیر افزایشیافته در ریشه وwp-adminآپلود کردم. - □ CDN (Cloudflare/ArvanCloud) را موقتاً غیرفعال کردم و دوباره تست کردم.
- □
WP_DEBUGرا فعال کردم و فایلdebug.logرا بررسی کردم. - □ یک تیکت حرفهای با شرح دقیق مشکل و اقدامات انجامشده به پشتیبانی هاست ارسال کردم.
جمعبندی و گام بعدی
ارور 503 در اکثر مواقع یک زنگ خطر است، نه یک فاجعهٔ تمامعیار. این خطا معمولاً میگوید «سایت من دارد بزرگ میشود و منابع فعلیام کافی نیستند» یا «یک کد خرابکار دارم که باید پیدا و حذفش کنم.» با دنبال کردن گامهای این راهنما (به ترتیب)، میتوانید در کمتر از ۱۵ دقیقه علت را شناسایی و رفع کنید.
اگر با وجود انجام تمام این مراحل، همچنان با خطای 503 یا سایر خطاهای سروری دستوپنجه نرم میکنید، یا ترجیح میدهید یک تیم متخصص این فرآیند را برایتان انجام دهد، کارشناسان پرشیا وب با خدمات رفع خطاهای سرور و خدمات پشتیبانی سایت وردپرس شخصی در کنار شماست. ما مشکل را از طریق لاگها عیبیابی میکنیم، منابع سرور را بهینه میکنیم و سایت شما را به سرعت به حالت عادی برمیگردانیم.
بنیامین ولادوست، بنیانگذار و مدیر تیم تخصصی پرشیا وب، بیش از یک دهه تجربه حرفهای در عرصۀ طراحی وبسایت، سئو، تولید محتوا، فروش رپورتاژ و بکلینک دارد. او با ترکیب دانش فنی و درک عمیق از رفتار کاربران، به برندها و کسبوکارها کمک میکند تا نهتنها ظاهر دیجیتال قدرتمندی داشته باشند، بلکه در نتایج جستجوی گوگل هم بدرخشند.
از سال ۲۰۱۳ فعالیت حرفهای خود را در حوزه طراحی وب آغاز کرد و تاکنون بیش از 300 پروژه طراحی سایت و بهینهسازی سئو در صنایع مختلف اجرا کرده است. تجربه عملی او در پروژههای واقعی، به ویژه در کسبوکارهای ایرانی، موجب شده است بتواند راهکارهایی کاملاً کاربردی و بومی برای رشد آنلاین ارائه دهد.
طراحی و توسعه وبسایتهای شرکتی، فروشگاهی و شخصی با تمرکز بر سرعت، امنیت و تجربه کاربری (UX)
استراتژیهای سئو فنی، on-page و off-page برای افزایش رتبه در نتایج گوگل
تحلیل رقبا، تحقیق کلمات کلیدی و اجرای کمپینهای تولید محتوا
مشاوره و اجرای رپورتاژ آگهی و لینکسازی هدفمند برای بهبود اعتبار دامنه
طراحی کمپینهای دیجیتال مارکتینگ یکپارچه برای برندهای نوپا و فعال
مطالب آموزشی و مقالات سئویی که توسط بنیامین ولادوست در وبلاگ “پرشیا وب” منتشر میشوند، بر پایه جدیدترین الگوریتمهای گوگل و استانداردهای جهانی تدوین شدهاند. او به عنوان متخصص مورد اعتماد در حوزه دیجیتال مارکتینگ، تاکنون در بیش از ۲۰ مجموعه آموزشی و ورکشاپ تخصصی سخنرانی و تدریس داشته است. بسیاری از کسبوکارهای آنلاین موفق، مسیر رشد خود را با آموزشها و راهنماییهای او آغاز کردهاند.
تمام راهکارها و خدماتی که توسط بنیامین ولادوست و تیم “پرشیا وب” ارائه میشوند، بر پایه صداقت، شفافیت و تحلیل دادههای واقعی بنا شدهاند. هدف او ارائه مشاورهای است که نه بر اساس تبلیغات، بلکه بر پایه داده و عملکرد واقعی کسبوکارها باشد.