khipster
@khipster

Что должно происходить при наборе site.ru/////////////// и куча слэшей после него?

Яндекс и гугл возвращают 200, но если я не ошибаюсь получается что URL разные, а контент один и тот же?

https://habrahabr.ru////////////////////// возвращает 404
https://toster.ru////////////////////////// возвращает 200!

Какое правило вообще убирает один слэш после хоста без какого либо редиректа? И почему не убираются два слэша?

https://toster.ru/ откроет https://toster.ru но
https://toster.ru// откроет https://toster.ru// сохранив два слеша

Может посоветуете что почитать вообще про слэши в URL?

Я например недавно бился с апачем не понимая почему он возвращает 301 редирект подставляя слэш в конец URL, оказалось там целая детективная история с DirectorySlash https://httpd.apache.org/docs/2.4/mod/mod_dir.html В общем, хотелось бы получить какую то структурированную информацию по всем этим слэшам.

PS

Создатель Всемирной паутины британский физик Тим Бернерс-Ли признал, что двойной слеш (http://), использующийся при обозначении адресов интернет-ресурсов, является избыточным знаком и введен им по ошибке, сообщает газета Times.
  • Вопрос задан
  • 615 просмотров
Пригласить эксперта
Ответы на вопрос 2
begemot_sun
@begemot_sun
Программист в душе.
URL это просто адрес ресурса, т.е. строка однозначно идентифицирующая что нужно делать серверу.
Алгоритм интерпретации определяется сервером.
Кто то может вам отдать 404, а кто то 200. а кто-то вообще 500. Это на усмотрение разрабов.
Слеши выбраны по аналогии с путем в дисковой системе, ну а там это повелось со времен MS-DOS, Unix, CP/M.
Ответ написан
@c64
работаю
в nginx должна быть опция склеивать или не склеивать идущие подряд слеши. При этом редирект происходить не обязан, просто обрабатываться location будет соответственно
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы