Что означает 504 Gateway Timeout?

504 Gateway Timeout означает, что сервер слишком долго ждал ответ от приложения или вышестоящего сервиса. В отличие от 404 или 403, такая ошибка обычно связана с медленным скриптом, внешним API, запросом к базе данных или перегруженным backend.

Типичные причины

  • PHP-скрипт выполняется дольше разрешенного времени.
  • Сайт ждет удаленный API, платежный сервис, CRM, службу доставки или внешний фид.
  • Запрос к базе данных слишком тяжелый или заблокирован.
  • Во время открытия страницы идет cron-задача, импорт или резервное копирование.
  • Плагин или тема CMS делает слишком много внешних запросов.

Что делать

  1. Проверьте, ошибка появляется на одной странице или на всем сайте.
  2. Откройте error log и поищите timeout, max_execution_time, memory limit или ошибки базы данных.
  3. Отключите недавно добавленные плагины, модули или интеграции.
  4. Перенесите тяжелые импорты и синхронизации в cron и запускайте их реже.
  5. Если страница зависит от внешнего сервиса, проверьте этот сервис отдельно.

Важный момент

Просто увеличивать таймауты - не всегда правильное решение. Если страница открывается слишком долго, пользователи и поисковые системы все равно будут считать ее нестабильной. Лучше найти, что именно тормозит запрос.

У timeout есть триггер

Пришлите URL и действие, после которого появляется 504. Отделим медленный скрипт, ожидание внешнего API и таймаут хостинга.

Найти триггер timeout