Перейти к содержимому

Maintenance mode завис: как вытащить сайт из бесконечного режима обслуживания

Maintenance mode завис: как вытащить сайт из бесконечного режима обслуживания

Автор: Александр, технический специалист WordPress
Дата публикации: 5 июня 2026
Последнее обновление: 5 июня 2026


Когда вы заходите на сайт и видите сообщение «Briefly unavailable for scheduled maintenance. Check back in a minute», это значит, что WordPress обновляет ядро, плагины или тему. Обычно режим обслуживания длится несколько секунд и выключается автоматически. Но что делать, если сайт завис в этом состоянии на часы или дни?

Почему WordPress зависает в режиме обслуживания

WordPress создаёт специальный файл .maintenance в корневой директории сайта перед началом обновления. После завершения обновления этот файл удаляется. Зависание происходит, когда обновление прерывается — например, из-за тайм-аута PHP, обрыва соединения с сервером или ошибки в плагине во время обновления.

Файл .maintenance остаётся, а механизма автоматической очистки по таймеру у WordPress нет. Сайт продолжает показывать заглушку даже после того, как технически всё уже завершилось.

Как проверить, что виноват именно .maintenance

Самый простой способ — подключиться к серверу по FTP/SFTP или через файловый менеджер хостинга и заглянуть в корневую директорию сайта (туда, где лежат wp-config.php, index.php, wp-content). Если вы видите файл .maintenance — вот он, виновник.

Проверить через SSH:

ls -la /var/www/site.ru/ | grep maintenance

Если файл есть — выводится строка вида:

-rw-r--r--   1 user user 46 Jun  5 12:30 .maintenance

Решение 1: удалить .maintenance вручную (самое простое)

Это базовый и безопасный способ, который подходит для 90% случаев.

Через FTP/SFTP:
1. Подключитесь к серверу любым FTP-клиентом (FileZilla, Total Commander и т.д.)
2. Перейдите в корень сайта
3. Найдите файл .maintenance
4. Удалите его (правый клик → Delete)

Через SSH (если доступен):

rm /var/www/site.ru/.maintenance

Через файловый менеджер хостинга:
1. Зайдите в панель управления хостингом (ISPmanager, cPanel, DirectAdmin)
2. Откройте файловый менеджер
3. Найдите .maintenance в корне сайта
4. Удалите

После удаления обновите страницу — сайт снова должен работать.

Решение 2: через wp-admin, если он ещё доступен

Иногда админ-панель WordPress продолжает работать, хотя фронтенд показывает заглушку. Зайдите в /wp-admin/ и попробуйте выполнить обновление повторно через Панель управления → Обновления. WordPress сам удалит .maintenance перед началом нового обновления.

Если эта страница не открывается — переходите к Решению 1.

Решение 3: автоматический тайм-аут на уровне сервера

На некоторых хостингах можно настроить автоматическое удаление .maintenance через задачу cron. Это профилактическая мера, чтобы проблема не повторилась.

Добавьте задачу в cron на сервере:

*/5 * * * * cd /var/www/site.ru && test -f .maintenance && find .maintenance -mmin +5 -delete

Эта команда каждые 5 минут проверяет: есть ли .maintenance, и если файл старше 5 минут — удаляет его. Подставьте свой путь к сайту.

Почему это не должно происходить часто

Если режим обслуживания зависает регулярно — проблема глубже:

  1. Слишком маленький тайм-аут PHP — проверьте max_execution_time в php.ini. Должен быть не меньше 120 секунд для обновлений.
  2. Медленный сервер — отклик MySQL может превышать допустимое время ожидания. Проверьте производительность базы данных.
  3. Конфликт плагинов — отключайте плагины по одному, чтобы найти тот, который срывает обновление.
  4. Недостаточно памяти PHP — значение memory_limit должно быть не ниже 128M, а лучше 256M.
# Проверка настроек PHP из командной строки
php -i | grep -E 'max_execution_time|memory_limit'

Профилактика

  • Обновляйте сайт вручную в часы низкой нагрузки, а не доверяйте автоматическим обновлениям
  • Держите бекап перед любым крупным обновлением
  • Используйте staging-копию для тестирования обновлений до применения на боевом сайте
  • Настройте мониторинг — сервисы вроде UptimeRobot или Better Uptime заметят проблему раньше посетителей

Что делать, если удаление .maintenance не помогло

Если после удаления .maintenance сайт всё ещё не работает, проверьте:

  1. Кэш браузера и CDN — очистите кэш или откройте сайт в режиме инкогнито
  2. Логи ошибок PHP — включите WP_DEBUG в wp-config.php, чтобы увидеть реальную ошибку:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Файл wp-content/debug.log покажет, что именно пошло не так.

  1. Файл .maintenance мог быть восстановлен веб-приложением — проверьте, не пересоздаёт ли его какой-то плагин безопасности или кэширования.

Краткий итог

  • Режим обслуживания WordPress управляется файлом .maintenance в корне сайта
  • Зависание — всегда следствие прерванного обновления (тайм-аут, ошибка плагина)
  • Лечение в 90% случаев — удаление .maintenance через FTP, SSH или файловый менеджер
  • Если ситуация повторяется — проверьте тайм-ауты PHP и наличие конфликтующих плагинов