Безопасно ли использовать HTTP-статус 308 Permanent Redirect?
Безопасно ли использовать HTTP-код состояния 308 Permanent Redirect ( предложение) в ответах сервера? Проблема с 301 Moved Permanently заключается в том, что он работает только с GET-запросами (если быть честным: POST преобразуется в GET, что НЕ является опцией).
Код статуса очень новый во "времени RFC", так что бы вы посоветовали?
Что бы сделал браузер, если бы не знал 308? Будет ли он найти место и сделать 302?
3 ответа
Хотя 308 теперь является стандартом ( https://tools.ietf.org/html/rfc7538), в настоящее время он не является безопасным [Изменить] (по состоянию на 3 апреля 2019 года), особенно для настольных приложений, но в некоторых случаях он может быть почти безопасным. конкретные регионы (например, Индия) или для приложений, предназначенных для планшетов и мобильных устройств.
Отсутствие безопасности связано с тем, что IE 11 в Windows 7 и 8.1 не поддерживает его. В IE 11 сайт просто зависает. К счастью, IE, поставляемый с Windows 10, поддерживает его, так что это будет всего лишь случай ожидания, когда общий многолюдный переход от Windows 7 (Win 7 только превзошел Win 10 в глобальной статистике использования, Win 8 значительно менее популярны, чем оба) [Изменить] или ваша компания принимает решение больше не поддерживать его (что можно очень убедительно обосновать с 14 января 2020 года, когда Windows 7 теряет даже долгосрочную поддержку).
Все остальные современные браузеры поддерживают его (Chrome, Firefox, Safari, Edge, Opera).
[Изменить] Статистика использования за март 2019 года, чтобы помочь принять ваше решение:
- 36,52% пользователей настольных компьютеров по-прежнему используют Windows 7
- 9,83% пользователей настольных компьютеров были в IE; поскольку Win10 так сильно давил на Edge, я бы предположил, что большинство из этих пользователей работают на Win 7. Ссылка на netmarketshare
Таким образом, решение об использовании 308 могло бы повлиять (вероятно, на мои предположения, основанные на приведенной выше статистике) от 5 до 9% пользователей настольных компьютеров на момент этого редактирования (3/4/2019). Если ваше приложение больше ориентировано на планшеты / мобильные устройства, это значение будет значительно ниже. Точно так же, если ваше приложение специально для индийского рынка.
Вы можете проверить, поддерживает ли ваш браузер перенаправления 308 здесь: https://webdbg.com/test/308/
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308
Предложение RFC 7538 сегодня получило широкую поддержку. Это безопасно.
308 вместо 301. 307 вместо 302.
двигаться!= перенаправление
Перемещение напоминает определенный адрес и / или перемещенный файл. Перенаправление - это новое местоположение или адрес.
Чтобы закончить это: Нет, это не безопасно использовать этот код состояния. Смотрите комментарии для деталей.
308 - это не стандарт - это предложение, все еще на экспериментальной стадии. Браузеры должны прибегнуть к 300 интерпретации любой ошибки 301-399, которую они не понимают.
Некоторые браузеры просто отказывают в этом коде состояния.