خطای Maintenance Loop در وردپرس چیست؟
تصور کنید در حال بهروزرسانی وردپرس یا یک افزونه هستید که ناگهان اینترنت قطع میشود، سرور زمانبندی را از دست میدهد، یا یک خطای غیرمنتظره رخ میدهد. بعد از چند دقیقه وقتی سعی میکنید وارد سایت شوید با پیام زیر روبهرو میشوید:
«Briefly unavailable for scheduled maintenance. Check back in a minute.»
این جمله به خودی خود نگرانکننده نیست — وردپرس آن را در طول هر آپدیت نشان میدهد. مشکل اینجاست که وقتی آپدیت بهدرستی تمام نمیشود، سایت در این حالت گیر میکند و این پیام برای همیشه نمایش داده میشود. در اصطلاح فنی به این حالت Maintenance Loop یا حلقه تعمیر میگویند.
چرا وردپرس وارد حالت Maintenance میشود؟
وردپرس در هر بار آپدیت (هسته، افزونه یا پوسته) یک فایل موقت به نام .maintenance در ریشه سایت میسازد. این فایل به سرور میگوید که سایت در حال تعمیر است و باید پیام «Briefly unavailable» نشان داده شود.
وقتی آپدیت با موفقیت به پایان میرسد، وردپرس این فایل را حذف میکند و سایت به حالت عادی برمیگردد. اما اگر آپدیت در میانه راه متوقف شود، این فایل باقی میماند و سایت در Maintenance Loop گیر میکند.
دلایل رایج قطع شدن آپدیت
- قطعی اینترنت در حین آپدیت
- timeout شدن سرور — سرور در زمان مجاز آپدیت را تمام نکرده
- کمبود فضای دیسک — سرور جایی برای ذخیره فایلهای جدید ندارد
- تداخل افزونهها — یک افزونه فرآیند آپدیت را مختل کرده
- خطای PHP — یک Fatal Error در حین آپدیت رخ داده
- محدودیت حافظه PHP — Memory Limit کافی نبوده
- کمبود منابع هاست — سرور تحت فشار بوده و آپدیت را به پایان نرسانده
روش رفع خطای Maintenance Loop
روش اول: حذف فایل .maintenance (سریعترین روش)
سادهترین و سریعترین راهحل این است که فایل .maintenance را از سرور حذف کنید:
- وارد cPanel شوید و به File Manager بروید.
- به ریشه سایت بروید (معمولاً
public_html). - در بالای File Manager روی Settings کلیک کرده و تیک «Show Hidden Files (dotfiles)» را بزنید.
- فایل
.maintenanceرا پیدا کرده و حذف کنید. - سایت را رفرش کنید — مشکل حل شده است.
⚠️ توجه: فایلهایی که با نقطه شروع میشوند (مثل .maintenance، .htaccess) در حالت پیشفرض مخفی هستند. حتماً تنظیمات File Manager را تغییر دهید.
روش دوم: حذف از طریق FTP
اگر به cPanel دسترسی ندارید، میتوانید از طریق نرمافزار FTP مثل FileZilla اقدام کنید:
- با اطلاعات FTP هاست وصل شوید.
- در FileZilla از منوی Server گزینه «Force showing hidden files» را فعال کنید.
- به ریشه سایت بروید و فایل
.maintenanceرا پیدا و حذف کنید.
روش سوم: حذف از طریق SSH
برای کاربران پیشرفته که به SSH دسترسی دارند:
cd /home/username/public_html
rm -f .maintenance
این دستور فایل را حذف میکند و سایت فوری به حالت عادی بر میگردد.
بعد از حذف فایل .maintenance چه کاری باید انجام داد؟
حذف فایل مشکل را فوری حل میکند اما کافی نیست. باید مطمئن شوید که آپدیت ناتمام بهدرستی تکمیل شده:
مرحله ۱: بررسی وضعیت آپدیتها
وارد داشبورد وردپرس شوید و به پیشخوان → بهروزرسانیها بروید. ببینید آیا هنوز آپدیت در انتظار است یا خیر. اگر آپدیت ناتمام وجود دارد، دوباره سعی کنید آن را اجرا کنید.
مرحله ۲: بررسی پوشه wp-content/upgrade
گاهی فایلهای نیمهآپدیتشده در پوشه wp-content/upgrade باقی میمانند. این پوشه را بررسی کنید و فایلهای قدیمی را حذف کنید.
مرحله ۳: بررسی لاگ خطاهای PHP
در cPanel به Error Logs بروید و ببینید چه خطایی باعث متوقف شدن آپدیت شده. این اطلاعات برای جلوگیری از تکرار مشکل ضروری است.
چطور از بروز Maintenance Loop جلوگیری کنیم؟
۱. همیشه قبل از آپدیت بکآپ بگیرید
این قانون طلایی وردپرس است. قبل از هر آپدیت یک نسخه کامل از سایت تهیه کنید. در صورت بروز هر مشکلی میتوانید به راحتی سایت را بازیابی کنید.
۲. PHP Memory Limit را افزایش دهید
این خط را به فایل wp-config.php اضافه کنید:
define('WP_MEMORY_LIMIT', '256M');
۳. آپدیتها را زمانی انجام دهید که ترافیک سایت کم است
آپدیت در ساعات اوج ترافیک ریسک بیشتری دارد. ترجیحاً در ساعات کمترافیک آپدیت کنید.
۴. از یک هاست باکیفیت استفاده کنید
یکی از اصلیترین دلایل بروز Maintenance Loop، کمبود منابع سرور در حین آپدیت است. هاستهای ارزانقیمت اغلب منابع کافی (CPU، RAM، timeout مناسب) برای تکمیل آپدیتهای بزرگ را ندارند.
هاست وردپرس باکیفیت باید:
- حافظه PHP کافی (حداقل ۲۵۶MB) ارائه دهد
- زمان اجرای PHP (max_execution_time) مناسب داشته باشد
- منابع سرور در ساعات آپدیت محدود نباشد
- در صورت بروز مشکل، پشتیبانی سریع و تخصصی داشته باشد
سوالات متداول درباره Maintenance Loop
آیا حذف فایل .maintenance خطرناک است؟
خیر. این فایل فقط یک فایل موقت است و حذف آن هیچ آسیبی به سایت نمیزند. البته باید مطمئن شوید که آپدیت ناتمام را هم بهدرستی تکمیل کنید.
اگر بعد از حذف فایل سایت هنوز کار نمیکند چه کنم؟
ممکن است آپدیت ناقص، فایلهای هسته وردپرس را خراب کرده باشد. در این صورت باید فایلهای هسته وردپرس را مجدداً آپلود کنید یا از بکآپ بازیابی کنید.
چند بار در روز میتوانم با این مشکل روبهرو شوم؟
اگر این مشکل مکرراً رخ میدهد، نشانه یک مشکل زیرساختی در هاست شماست. در این صورت بررسی جدی هاست و در صورت لزوم تغییر آن ضروری است.
جمعبندی
خطای Maintenance Loop در وردپرس یکی از مشکلاتی است که با یک اقدام ساده — حذف فایل .maintenance — قابل رفع است. اما ریشه واقعی مشکل اغلب کمبود منابع هاست، timeout سرور، یا خطاهای PHP است که باید جداگانه بررسی و رفع شوند.
اگر این مشکل برای شما مکرر است یا میخواهید از همان ابتدا روی بستری مطمئن کار کنید، پیشنهاد میکنیم هاست وردپرس میهن هاستینگ را بررسی کنید. زیرساخت ما برای اجرای بیدردسر وردپرس — از جمله آپدیتهای بدون وقفه — بهینهسازی شده است.
