Код 409 Conflict означает, что запрос противоречит текущему состоянию ресурса на сервере: выполнить его прямо сейчас нельзя, но после устранения конфликта — можно. Классический пример — два человека одновременно редактируют одну запись, и второе сохранение отклоняется. Для владельца сайта 409 на обычной странице почти всегда сигнал об ошибке в логике приложения или о том, что мониторинг направлен не на тот адрес.
Что означает код 409
409 — клиентская ошибка из группы 4xx, описанная в стандарте RFC 9110. Сервер понял запрос, но отказался его выполнять: результат противоречил бы текущему состоянию ресурса. Стандарт рекомендует включать в тело ответа описание конфликта, чтобы клиент мог устранить его и повторить запрос.
Отличия от смежных кодов важны для диагностики. 400 Bad Request — запрос синтаксически некорректен, сервер его вообще не разобрал. 422 Unprocessable Content — формат верный, но данные не проходят проверку приложения. При 409 и синтаксис, и данные корректны — мешает состояние ресурса: версия записи устарела, объект с таким именем уже существует, родительская папка удалена. Место 409 среди остальных кодов — в полном списке кодов ответа HTTP.
Чаще всего 409 встречается в API и файловых хранилищах: при повторном создании ресурса с тем же идентификатором, при конфликте версий или при загрузке файла по WebDAV в несуществующую папку.
Считает ли Tracker.ru 409 падением
Да. Успешной Tracker.ru считает только проверку с кодом 2xx. Ответ 409 помечает сайт недоступным, тип ошибки — «HTTP-ошибка», и вы получаете уведомление на email, в Telegram или по webhook. Проверки идут из нескольких регионов, поэтому случайный сбой в одной точке легко отличить от общей проблемы. Обычная страница не должна отвечать 409 на простой GET-запрос: если мониторинг фиксирует этот код, конфликт возвращает само приложение, и с ним стоит разобраться. Периоды недоступности отражаются в статистике аптайма.
Типичные причины
- Мониторинг направлен на API-метод, меняющий данные. Если проверяемый адрес создаёт или обновляет ресурс, повторные запросы мониторинга упираются в «такой объект уже существует» — и сервер честно отвечает 409.
- Конфликт версий при одновременном редактировании. Приложение сверяет версию записи (заголовок If-Match, ETag или поле версии) и отклоняет сохранение, если данные уже изменил кто-то другой.
- WebDAV и файловые хранилища. По стандарту WebDAV сервер возвращает 409 при загрузке файла в несуществующую коллекцию — так ведут себя Nextcloud, ownCloud и модуль DAV в веб-серверах.
- Дубликат при создании ресурса. Регистрация с занятым email, повторное создание заказа с тем же номером, конфликт имени материала в системе управления контентом.
- Ошибка логики приложения. Разработчик выбрал 409 для ситуации, где уместнее 400, 422 или 500, — и код всплывает на страницах, где конфликтовать нечему.
- Плагин или правило безопасности. Отдельные CMS-плагины и WAF-правила отвечают 409 на запросы, которые сочли подозрительными, включая запросы систем мониторинга.
Что проверить владельцу сайта
- Откройте онлайн-проверку кода ответа своего сайта — она покажет реальный ответ сервера без кэша браузера и без регистрации.
- Убедитесь, что мониторинг направлен на обычную страницу, а не на API-метод, меняющий данные. Для проверки доступности подходит адрес, который отвечает на GET одинаково при каждом запросе.
- Изучите тело ответа 409: по стандарту сервер описывает в нём суть конфликта — часто этого достаточно для диагностики.
- Посмотрите логи приложения в момент проверки: какой обработчик вернул 409 и почему.
- Проверьте недавние изменения — обновления CMS, новые плагины, правила WAF. Они могли начать отвечать 409 на автоматические запросы.
- Если 409 отдаёт ваш API, обсудите с разработчиками идемпотентность метода: повторный одинаковый запрос не должен создавать конфликт.
Как часто встречается 409 на практике
Код 409 отметился в проверках Tracker.ru лишь 22 раза из десяти с лишним миллионов (по данным на июль 2026). Это ожидаемо: конфликт состояния возникает при изменении данных через API, а на мониторинг обычно ставят публичные страницы, которые просто отвечают на GET-запросы.
Частые вопросы
Почему мониторинг показывает 409, а в браузере сайт открывается?
Браузер и мониторинг могут запрашивать разные адреса: вы открываете главную страницу, а проверка направлена на API-метод, который конфликтует при повторных запросах. Второй вариант — конфликт временный: запись была занята в момент проверки, а минутой позже освободилась. Сравните адрес монитора с адресом, который открываете в браузере.
Чем 409 отличается от 400 Bad Request и 422?
400 — сервер не смог разобрать запрос: сломанный синтаксис, некорректные заголовки. 422 — запрос разобран, но данные не проходят проверку. 409 — и запрос, и данные корректны, мешает текущее состояние ресурса: объект уже существует или его версия устарела. После устранения конфликта тот же запрос выполнится успешно.
Нужно ли что-то чинить, если 409 возвращает API?
Для API 409 — штатный ответ: так сервис сообщает клиенту о конфликте версий или дубликате. Чинить нужно не API, а настройку мониторинга: проверяйте адрес, который стабильно отвечает 200 на GET-запрос, — например, отдельную страницу состояния сервиса. Тогда уведомления будут приходить только при реальных сбоях.