408 Request Timeout ("истекло время ожидания")

https://httpcat.ru/408
Это прямая ссылка на изображение со статусом. Вы можете скопировать и использовать её где угодно.
HTTP статус 408 — истекло время ожидания

Описание

Код состояния 408 Request Timeout означает, что сервер закрыл соединение, так как клиент не отправил полный запрос в течение установленного времени ожидания.

Основные характеристики:

  • Сервер ожидал, что клиент начнёт или завершит отправку запроса, но этого не произошло вовремя
  • Может возникать при прерывании соединения, медленном интернете, сетевых сбоях или тайм-ауте на стороне сервера
  • Не означает ошибку в запросе, а лишь слишком долгую паузу до начала или завершения передачи

Типичное использование:

GET /slow-request HTTP/1.1
Host: example.com

(клиент долго не отправляет данные)

HTTP/1.1 408 Request Timeout
Content-Type: application/json

{
    "error": "Request timed out",
    "message": "The server closed the connection due to inactivity."
}

Особенности заголовков:

  • Connection: close — часто используется, чтобы указать закрытие соединения
  • Retry-After — может указывать, через сколько клиенту следует повторить попытку

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

  1. Если клиент слишком долго не начинает или не завершает отправку запроса
  2. Когда сервер ограничивает время жизни неактивного соединения
  3. При защите от медленных соединений или DoS-атак

Дополнительно:

  • Клиент может автоматически повторить запрос, особенно если это безопасный метод (GET, HEAD)
  • Не следует путать с 504 Gateway Timeout, который означает, что **сервер не дождался ответа от другого сервера**, а не клиента
  • 408 может возвращаться либо сразу, либо после длительной паузы

Документация: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408


Похожие статусы

HTTP статус 504 — шлюз не отвечает
504
шлюз не отвечает
HTTP статус 524 — время ожидания истекло
524
время ожидания истекло

↑ Наверх