Никита Митусов Обсудить задачу

Ошибки502и504насайте:чтозначатикакисправить,еслисайтваш

Никита Митусов 2 ноября 2026 11 мин чтения

Коротко

Ошибка 502 значит, что веб-сервер получил плохой ответ от программы сайта, а 504 значит, что он её не дождался. Посетителю остаётся ждать. Владельцу нужно проверить диск, память и журнал ошибок, вспомнить последние изменения и написать хостингу с точным временем сбоя.

Ошибка 502 Bad Gateway значит, что веб-сервер обратился к программе сайта и получил плохой ответ или отказ. Ошибка 504 Gateway Time-out значит, что он не дождался ответа за отведённое время. Обе ошибки живут на сервере, поэтому совет «почистите кеш» владельцу сайта не поможет. Ниже мой порядок проверки: что посмотреть самому за 10 минут, что написать хостингу и что передать разработчику.

Чем отличаются ошибки 500, 502, 503 и 504

Сайт обычно работает в две ступени. Спереди стоит веб-сервер, чаще всего nginx. Он принимает запрос посетителя и передаёт его программе сайта: PHP, Laravel или Node.js. Код ошибки подсказывает, на какой ступени сбой.

Код Что случилось Частые причины С чего начать
500 Internal Server Error Программа сайта упала на своей ошибке Код, плагин, .htaccess, нехватка памяти PHP Журнал PHP, последние изменения
502 Bad Gateway nginx получил от программы плохой ответ или отказ PHP не запущен, упал или перезапускается, кончилась память Статус PHP, память, журнал nginx
503 Service Unavailable Сервер временно не может обслужить запрос Перегрузка, лимиты тарифа, технические работы Нагрузка, лимиты, новости хостинга
504 Gateway Time-out nginx не дождался ответа Долгий скрипт, медленная база, зависший внешний сервис Какой запрос долгий и сколько он идёт

Я упростил формулировки, точные определения есть в спецификации HTTP.

Если перед сайтом стоит CDN или защита от атак, ошибку может показывать она, и на экране будет её фирменная страница. Тогда сначала откройте её панель: сбой бывает и там, и на вашем сервере за ней.

Что проверить за 10 минут, если сайт ваш

Эти шаги ничего не ломают, разработчик для них не нужен.

  1. Поймите масштаб. Откройте главную, каталог, форму и админку с телефона через мобильный интернет. Если падает одна страница, причина в её коде или данных. Если падает всё, смотрите сервер.
  2. Узнайте точный код. Подойдёт «Проверка ответа сервера» в Яндекс Вебмастере или команда curl -I https://ваш-сайт.ru/. Первая строка ответа покажет код.
  3. Откройте панель хостинга. Посмотрите диск, память, процессор и новости о работах.
  4. Вспомните, что менялось. Обновления плагинов, смена версии PHP, переезд, новая панель, крупный импорт, запуск рекламы, обмен с 1С.
  5. Запишите время. Часы и минуты по Москве. Без них хостинг будет искать в журнале вслепую.
  6. Посмотрите журнал ошибок. Обычно он есть в панели хостинга.

Диск проверяйте первым. В сентябре 2025 сайт IZILAB лёг прямо на показе заказчику, панель хостинга тоже не пускала. Причина оказалась простой: заполнился диск. Три месяца всё работало, а упало в самый неудобный момент.

Если у вас VPS и есть доступ по SSH, те же проверки занимают минуту. Команды только читают данные:

df -h                                # сколько места на диске
free -m                              # сколько свободной памяти
systemctl status nginx php8.3-fpm    # запущены ли службы
tail -n 50 /var/log/nginx/error.log  # последние ошибки nginx

В php8.3-fpm подставьте свою версию PHP. Путь к журналу на вашем сервере может отличаться.

Журнал nginx часто сразу называет причину:

Строка в журнале Что значит Код
connect() ... failed (111: Connection refused) Программа сайта не запущена или не слушает нужный адрес 502
upstream prematurely closed connection Программа оборвала соединение, не закончив ответ 502
upstream sent too big header Заголовки ответа не поместились в буфер nginx 502
upstream timed out (110: Connection timed out) Ответа не дождались 504

Ошибка 504 Gateway Time-out: что значит и как исправить

504 значит, что nginx подождал и перестал. В документации nginx ожидание ответа от PHP по умолчанию равно 60 секундам. В справке REG.RU назван стандартный лимит 30 секунд. Источники расходятся, поэтому смотрите настройку своего сервера.

Главное про 504: посетитель получил ошибку, а работа на сервере может идти дальше.

Так было на Arctic Elite. После перехода на новую панель сервера обмен с 1С доходил почти до конца и падал с 504. Таймаут уже пытались увеличить, но в директиве, которая не действует на PHP. Журнал показал картину по секундам:

  • 15:06:11 стартовал импорт;
  • на 60-й секунде nginx перестал ждать и отдал 504;
  • PHP спокойно работал дальше и в 15:07:51 закончил запрос, создав 278 товаров;
  • 1С вместо ответа success получила страницу ошибки, написала «Получен неизвестный статус импорта», посчитала обмен упавшим и запустила его снова.

Для таких случаев есть простое правило: настройка должна совпадать со способом, которым nginx передаёт запрос.

Как nginx передаёт запрос Какая настройка действует
fastcgi_pass, напрямую в PHP-FPM fastcgi_read_timeout
proxy_pass, в Apache, Node.js или другое приложение proxy_read_timeout

На Arctic Elite стояла proxy_read_timeout, а PHP работал через fastcgi_pass, и нужная директива нигде не была задана. Поэтому действовало умолчание в 60 секунд, а запрос шёл 100.

Вот фрагмент для примера, у вас будет свой блок и своя цифра:

location ~ \.php$ {
    fastcgi_pass unix:/run/php/php-fpm.sock;
    fastcgi_read_timeout 300s;    # ждать ответ PHP до 5 минут
}

После правки проверьте конфигурацию командой nginx -t и перезагрузите nginx. На виртуальном хостинге эту настройку меняет поддержка.

Таймаут стоит поднимать только для долгих операций, таких как обмен с 1С. Обычной странице 300 секунд ожидания не помогут: посетитель уйдёт раньше, а зависшие запросы займут процессы PHP. Если обмен падает с другой ошибкой, посмотрите разбор «Не удалось разобрать данные», там часто та же история с ответом сайта.

Вторая правка обычно важнее таймаута: увести долгую работу в фон. На Automost 504 всплывала три раза, и причины были разные:

  • Сделка не открывалась. В феврале 2025 старые сделки работали, а новая отдавала 504. В ней стояло вымышленное устройство, и сайт ждал ответа от машины, которой нет.
  • Импорт из Excel. В июне 2025 загрузка падала примерно от 200 объявлений.
  • Обновление склада. Позже большие объёмы тоже выбивали 504, потому что задачи шли прямо в запросе. Перевод в фон усыплял чат: у них была общая настройка очередей. Помогло разделение очередей.

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

Ошибка 502 Bad Gateway: что значит и как исправить

502 чаще всего значит одно: программа сайта не работает или оборвала ответ. Обычные причины такие:

  • PHP или приложение остановилось после обновления или неудачной настройки;
  • не хватило памяти, и процесс упал;
  • приложение перезапускается и пару секунд не отвечает;
  • заголовки ответа не поместились в буфер nginx;
  • сбой на стороне CDN или защиты.

Смотрите на длительность. На gptml уборщик при нехватке диска срезает старую историю, и приложение перезапускается примерно на 2 секунды. За одну такую обрезку в логах набралось 46 ошибок 502, при этом данные и новые заявки не пострадали. Если 502 мелькает и исчезает, ищите перезапуск: выкладку, cron, уборщик. Если висит минутами, проверьте, запущен ли процесс и хватает ли памяти.

Перезапуск PHP в панели или командой systemctl restart php8.3-fpm часто поднимает сайт сразу. Причину он не лечит, поэтому сначала сохраните журнал. После перезапуска следы могут затеряться среди новых записей.

Ошибка 503 на сайте: что означает

503 значит, что сервер жив, но временно не может ответить. Спецификация называет две причины: перегрузка и плановые работы. На практике к ним добавляются лимиты тарифа.

Лимиты бывают жёсткими. В справке REG.RU на одном тарифе разрешено 4 процесса PHP, на другом 32. Когда все заняты, новым запросам ждать негде.

Что проверить при 503:

  1. Новости и статус хостинга.
  2. Нагрузку и лимиты в панели в момент сбоя.
  3. Кто создаёт нагрузку: реклама, обмен, импорт, роботы, атака.
  4. Кеш: страницы без него заметно сильнее грузят PHP.
  5. Обновление WordPress. Если оно оборвалось, в корне сайта может остаться файл .maintenance, и экран обслуживания не исчезнет.

503 часто проходит сама. Владелец одного сервиса бронирования написал мне, что админка отдаёт 503, а к следующему дню ошибка исчезла. Я тогда ничего на сайте не делал. Если такое повторяется, уже стоит смотреть лимиты и говорить с хостингом.

Для плановых работ 503 подходит. Справка Яндекса рекомендует этот код на время недоступности сайта, чтобы страницы не выпадали из поиска. Google описывает такой режим на 1–2 дня и просит не отдавать 503 на robots.txt: это остановит весь обход сайта.

Ошибка 500 на сайте: что это и где искать

500 значит, что программа сайта упала на собственной ошибке. nginx здесь только передаёт плохую новость, поэтому смотреть нужно журнал PHP или приложения.

Обычно виноваты:

  • свежая правка кода или обновление плагина;
  • испорченный .htaccess;
  • нехватка памяти;
  • тяжёлая страница.

Последний случай легко пропустить. На IZILAB страница одной из лабораторных сетей отдавала 500, а все соседние работали. На ней не было постраничного вывода, а позиций оказалось слишком много. Постраничный вывод решил проблему.

Если сайт на WordPress и на экране написано про критическую ошибку, идите в отдельную статью: как отключить плагин через FTP и включить журнал.

Почему ошибка появилась «сама», хотя никто ничего не менял

Код мог не меняться, а данные росли. База генераций на gptml была одним файлом, который копился с апреля. К сентябрю он вырос до 108 МБ и 61 237 записей. Каждое сохранение переписывало его целиком, сервер замирал, и готовые заявки падали по таймауту. Снаружи это выглядело как внезапный сбой.

Поэтому при «внезапной» ошибке проверьте, что выросло:

  • заполненность диска;
  • размер базы и журналов;
  • число товаров в каталоге и файлов обмена;
  • посещаемость, например после запуска рекламы.

Ещё сюда относится всё, что хостинг делает без вас: смена версии PHP, перенос на другой сервер, новая панель. Спросите об этом поддержку прямо.

Что написать хостингу

Хорошее письмо экономит часы. Скопируйте и подставьте своё:

Здравствуйте. Сайт ваш-сайт.ru с 14:20 по Москве отдаёт ошибку 504 на странице /catalog/. Остальные страницы работают. За последние сутки мы обновили [что именно] / ничего не меняли.

Посмотрите, пожалуйста:

  1. Есть ли записи в журналах nginx и PHP за это время. Пришлите строки.
  2. Не упёрся ли сайт в лимит памяти, процессов или диска.
  3. Какие таймауты стоят для PHP и можно ли изменить их для этого адреса.
  4. Были ли работы на сервере или смена настроек.

Просите строки журнала, а не общий вывод. Ответ «у нас всё работает» ничего не даёт разработчику, а строка журнала часто сразу называет причину.

Что передать разработчику

Чем полнее набор, тем дешевле разбор:

  • адрес страницы и действие, на котором появляется ошибка;
  • код ошибки, скриншот, время и часовой пояс;
  • сколько длится сбой и повторяется ли он;
  • что менялось за последние дни;
  • ответ хостинга и строки журнала;
  • есть ли свежая копия сайта;
  • доступ к панели или SSH отдельным пользователем.

Пароли лучше передавать не в общем чате.

Влияют ли ошибки 5xx на позиции в Яндексе и Google

Короткий сбой обычно проходит без следа. Длинный опасен тем, что страницы выпадают из поиска.

В блоге Яндекса сказано, что недоступность сама по себе не должна влиять на позиции. Но страницы, которые не отвечают кодом 200, со временем исключаются из поиска, и по их запросам сайт теряет места. Сохранение позиций Яндекс не гарантирует. Google при 5xx замедляет обход, а адреса с постоянными ошибками в итоге убирает из индекса.

Точного срока оба не называют. В статьях встречаются цифры вроде «6 часов и позиции упадут», в документации Яндекса и Google я таких порогов не нашёл.

После починки сделайте три вещи:

  1. Откройте в Яндекс Вебмастере раздел «Диагностика» и посмотрите предупреждение про частые ответы 5xx.
  2. Проверьте важные страницы через «Проверку ответа сервера». Нужен код 200.
  3. Отправьте выпавшие страницы в «Переобход страниц».

Когда звать специалиста

Сами вы можете проверить масштаб, диск и лимиты, откатить свежее обновление, написать хостингу, почистить журналы, если панель это позволяет.

Разработчик нужен, если ошибка повторяется, падает обмен с 1С или оплата, журнал указывает на код, нужно менять настройки сервера или уводить задачи в фон.

Пришлите текст ошибки через бесплатный разбор. Если нужно смотреть на сервере, разбор стоит 3 000 ₽ и идёт в зачёт работы. Дальше разовые задачи от 2 500 ₽ в час. Если сайт важен для продаж, в поддержке от 10 000 ₽ в месяц есть обновления, резервные копии и мониторинг обмена или оплаты.

Частые вопросы

Ошибка 502 что значит?

Веб-сервер обратился к программе сайта и получил плохой ответ или отказ. Чаще всего программа упала, перезапускается или ей не хватило памяти.

Ошибка 504 что значит и как исправить?

Сервер не дождался ответа от программы сайта. Найдите долгий запрос в журнале, ускорьте его или уведите в фон, а таймаут поднимайте только для действительно долгих операций.

Ошибка 503 на сайте что означает?

Сервер жив, но временно не может обслужить запрос: перегрузка, лимит тарифа или технические работы. Проверьте нагрузку, лимиты и новости хостинга.

Ошибка 500 на сайте что это?

Программа сайта упала на собственной ошибке. Причину показывает журнал ошибок PHP, чаще всего это код, плагин, файл .htaccess или нехватка памяти.

Пропадёт ли ошибка 502 сама?

Если причина в коротком перезапуске, она исчезнет за секунды или минуты. Если ошибка держится или возвращается, ищите причину в журнале и пишите хостингу.

Упадут ли позиции из-за ошибки 504?

По словам Яндекса, сама недоступность не должна влиять на позиции, но страницы, которые долго отдают 5xx, выпадают из поиска. Точных сроков ни Яндекс, ни Google не называют.

Никита Митусов

Никита Митусов, веб-разработчик. Более 5 лет делаю сайты, магазины, интеграции и ботов. Статья основана на моих проектах и проверена по документации сервисов.

Читать дальше