Что это значит
У ресурса несколько представлений (язык, формат), и клиент или пользователь должен выбрать одно. Сервер может предложить предпочтительное через Location.
Типичные причины
- Согласование содержимого не смогло выбрать вариант
- Сервер перечисляет альтернативные форматы или языки
Как исправить
Если вы клиент или посетитель
Перейдите по Location, если он есть, иначе выберите из перечисленных ссылок. Браузеры не выбирают автоматически.
Если вы владелец сайта или API
Предпочитайте согласование на стороне сервера (Accept, Accept-Language) и возвращайте 200 с лучшим вариантом; 300 редко даёт лучший пользовательский опыт.
Пример ответа
HTTP/1.1 300 Multiple Choices
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Link: </doc.en.html>; rel=alternate; hreflang=en
Link: </doc.de.html>; rel=alternate; hreflang=de
Content-Length: 0 Спецификация
Частые вопросы
› Переходят ли браузеры по 300 автоматически?
Некоторые переходят по заголовку Location, если он есть; иначе пользователь видит страницу с вариантами.
› Подходит ли 300 для многоязычных сайтов?
Обычно нет. Перенаправляйте через 302 или отдавайте нужный язык со ссылками hreflang.