Я постоянно использую URL-адреса, набирая их с "//" после "http:"но что значит"//"действительно стоять?
Slashdot имел статья об этом пару дней назад. Тим Бернерс-Ли указывает, что не было особой причины, по которой присутствуют две косые черты (см. Также http://bits.blogs.nytimes.com/2009/10/12/the-webs-inventor-regrets-one-small-thing/).
Лично мне нравится идея такого стиля URL:
http:/com/example/www/blah1/blah.html
В таком URL-адресе нет явного «имени хоста». Если ваша ферма серверов «www.example.com» становится перегруженной запросами к ресурсу «/ blah1», вы просто создаете DNS-запись «blah1.www.example.com» и указываете ее на другую ферму веб-серверов, на которой размещается « / com / example / blah1 "иерархия ресурсов.
Несомненно, такая идея имеет последствия для DNS, и сейчас этого точно не случится (как и внезапно появившиеся часы, идущие против часовой стрелки, войдут в моду), но я думаю, что это сработало бы довольно хорошо.
Изменить: SRV RR для веб-сайтов тоже было бы очень хорошо. Ад - SRV RR для что-нибудь было бы здорово.
На это есть ответ в Часто задаваемые вопросы Тима Бернерса-Ли (ссылка найдена в обсуждении слэшдота, упомянутом в ответе @Evan Anderson). По сути, он скопировал синтаксис имени файла из Аполлон Домен, где начало пути с двойной косой черты, за которым следует имя компьютера, использовалось для прозрачного доступа к файлам на других компьютерах (одинарная косая черта по-прежнему является корневым каталогом). Он просто добавил к нему протокол, в данном случае http
.
Этот особый случай все еще существует в стандартах Unix, где две косые черты в начале имени файла может интерпретироваться способом, определяемым реализацией (три или более слэша эквивалентны одному). И такое же соглашение широко используется в Windows, только с обратной косой чертой вместо прямой косой черты (это называется Путь UNC там).
xx: // используется для указания используемого протокола, это двойное /, поэтому его нельзя спутать с просто подпапкой.
Тим Бернерс-Ли признает, что это было предназначено для отделения протокола от адреса, но оказалось ненужным.
http://www.theinquirer.net/inquirer/news/1558680/berners-lee-regrets-double-slash
Видеть RFC 1738, раздел 3.1:
Хотя синтаксис для остальной части URL-адреса может варьироваться в зависимости от конкретной выбранной схемы, схемы URL-адресов, которые включают прямое использование протокола на основе IP для указанного хоста в Интернете, используют общий синтаксис для данных, специфичных для схемы:
//<user>:<password>@<host>:<port>/<url-path>
Некоторые или все части
"<user>:<password>@"
,":<password>"
,":<port>"
, и"/<url-path>"
могут быть исключены. Данные схемы начинаются с двойной косой черты."//"
чтобы указать, что он соответствует синтаксису общей схемы Интернета.
Он думает, что это буквально означает «Бей! Бей!», С тех самых ранних времен, когда для установления соединения с сайтом требовалось немного вуду, и вам приходилось жертвовать (бить) не одну, а ДВУХ цыплят, чтобы угодить WorldWideWeamons .. :)
Это означает корень адреса.