Url

Uniform Resource Locator, сокр.

URL (произносится [ю-ар-эл], [ˌjuː ɑːr ˈel]; с англ. — «единообразный указатель местонахождения ресурса») — адрес ресурса в сети Интернет. Стандарт URL регулируется организацией IETF. URL как формат адреса ресурса был изобретён Тимом Бернерсом-Ли в 1990 году в стенах Европейского совета по ядерным исследованиям, и стал фактической основой для создания Всемирной паутины. Сейчас URL позиционируется как часть более широкой системы адресации URI и регулируется документом, определяющим URI (RFC 3986).

В России употребление URL в официальных документах регулируется ГОСТ Р 7.0.5-2008 «Библиографическая ссылка. Общие требования и правила составления».

История

URL был изобретён Тимом Бернерсом-Ли в 1990 году в стенах Европейского совета по ядерным исследованиям (фр. Conseil Européen pour la Recherche Nucléaire, CERN) в Женеве, Швейцария. URL стал фундаментальной инновацией в Интернете. Изначально URL предназначался для обозначения мест расположения ресурсов (чаще всего файлов) во Всемирной паутине. Сейчас URL применяется для обозначения адресов почти всех ресурсов Интернета. Стандарт URL закреплён в документе RFC 3986. Сейчас URL позиционируется как часть более общей системы идентификации ресурсов URI, сам термин URL постепенно уступает место более широкому термину URI. Стандарт URL регулируется организацией IETF и её подразделениями.

В 2009 году Тим Бернерс-Ли высказал мнение об избыточности двойного слеша // в начале URL, после указания сетевого протокола.

Структура URL

URL был разработан как система для максимально естественного указания на местонахождения ресурсов в сети. Локатор должен был быть легко расширяемым и использовать лишь ограниченный набор ASCII‐символов (к примеру, в URL никогда не применяется пробел). В связи с этим возникла следующая традиционная форма записи URL:

<схема>:[//[<логин>[:<пароль>]@]<хост>[:<порт>]][/][?<параметры>][#<якорь>]

В этой записи:

схема
логин
    имя пользователя, используемое для доступа к ресурсу
пароль
хост
порт
    порт хоста для подключения
URL-путь
    уточняющая информация о месте нахождения ресурса; зависит от протокола.
параметры
    строка запроса с передаваемыми на сервер (методом GET) параметрами. Начинается с символа ?, разделитель параметров — знак &. Пример: ?параметр_1=значение_1&параметр_2=значение_2&параметр3=значение_3
якорь

Схемы (протоколы) URL

Общепринятые схемы (протоколы) URL включают:

  • ftp — протокол передачи файлов FTP
  • http — протокол передачи гипертекста HTTP
  • rtmp — проприетарный протокол потоковой передачи данных Real Time Messaging Protocol, в основном используется для передачи потокового видео и аудио с веб-камер через Интернет.
  • rtsp — потоковый протокол реального времени.
  • https — специальная реализация протокола HTTP, использующая шифрование (как правило, SSL или TLS)
  • gopher — протокол Gopher
  • mailto — адрес электронной почты
  • news — новости Usenet
  • nntp — новости Usenet через протокол NNTP
  • irc — протокол IRC
  • smb — протокол SMB/CIFS
  • prospero — служба каталогов Prospero Directory Service
  • telnet — ссылка на интерактивную сессию Telnet
  • wais — база данных системы WAIS
  • xmpp — протокол XMPP (часть Jabber)
  • file — имя локального файла
  • data — непосредственные данные (Data: URL)
  • tel — звонок по указанному телефону

Экзотические схемы URL:

Схемы URL в браузерах:

Кодирование URL

Стандарт URL использует набор символов US-ASCII. Это имеет серьёзный недостаток, поскольку разрешается использовать лишь латинские буквы, цифры и несколько знаков пунктуации. Все другие символы необходимо перекодировать. Например, перекодироваться должны буквы кириллицы, буквы с диакритическими знаками, лигатуры, иероглифы. Перекодирующая кодировка описана в стандарте RFC 3986 и называется URL-encoding, URLencoded или percent‐encoding.

Пример кодирования можно видеть в русскоязычной Википедии, использующей в URL русский язык. Например, строка вида:

https://www.duhoctrungquoc.vn/wiki/ru/Википедия 

кодируется как:

https://www.duhoctrungquoc.vn/wiki/ru/%D0%92%D0%B8%D0%BA%D0%B8%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F 

Реализация

Преобразование происходит в два этапа: сначала каждый символ кириллицы кодируется в UTF-8 в последовательность из двух байтов, а затем каждый байт этой последовательности записывается в шестнадцатеричном представлении с предшествующим знаком процента (%):

В → D0 и 92 → %D0%92 и → D0 и B8 → %D0%B8 к → D0 и BA → %D0%BA и → D0 и B8 → %D0%B8, и т. д. 
Зарезервированные символы
! * ' ( ) ; : @ & = + $ , / ? # [ ]
Не зарезервированные символы
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 - _ . ~

Все другие символы в URI кодируются.

Зарезервированные символы кодируются в таком соответствии:

! " # $ % & ' * + , : ; < = > ? [ ] ^ ` { | } <пробел>
%21 %22 %23 %24 %25 %26 %27 %2A %2B %2C %3A %3B %3C %3D %3E %3F %5B %5D %5E %60 %7B %7C %7D %20

Кодирование параметров в Internet Explorer и старом Firefox происходит несколько иначе.

В некоторых случаях URL формируется с использованием кодирования Base58.

Стандарт IRI

Поскольку такому преобразованию подвергаются буквы всех алфавитов, кроме базовой латиницы, то URL со словами подавляющего большинства языков может стать нечитаемым для человека.

Это всё входит в противоречие с принципом интернационализма, провозглашаемого всеми ведущими организациями Интернета, включая W3C и ISOC. Эту проблему призван решить стандарт IRI (англ. Internationalized Resource Identifier) — международных идентификаторов ресурсов, в которых можно было бы без проблем использовать символы Юникода, и которые поэтому не ущемляли бы права других языков. Хотя заранее сложно сказать, смогут ли когда‐либо идентификаторы IRI заменить столь широко используемые URL (и URI в целом).

Ограничение длины

Формально, длина URL не ограничена, но браузеры имеют ограничения по длине URL. Не рекомендуется использовать URL длиной более 2048 символов, так как Microsoft Internet Explorer имеет именно такое ограничение.

Инициатива PURL

Ещё один кардинальный недостаток URL состоит в отсутствии гибкости. Ресурсы во Всемирной паутине и Интернете перемещаются, а ссылки в виде URL остаются, указывая на уже отсутствующие ресурсы. Это особенно болезненно для электронных библиотек, каталогов и энциклопедий. Для решения этой проблемы были предложены постоянные локаторы PURL (англ. Persistent Uniform Resource Locator). В сущности это те же URL, но они указывают не на конкретное место расположения ресурса, а на запись в базе данных PURL, где, в свою очередь, записан уже конкретный URL‐адрес ресурса. При обращении к PURL сервер находит нужную запись в этой базе данных и перенаправляет запрос уже на конкретное местоположение ресурса. Если адрес ресурса меняется, то нет нужды исправлять все бесчисленные ссылки на него — достаточно лишь изменить запись в БД. В настоящий момент эта идея не стандартизирована и не имеет широкого распространения.

См. также

Примечания

Ссылки

Tags:

Url ИсторияUrl Структура URLUrl Схемы (протоколы) URLUrl Кодирование URLUrl Ограничение длиныUrl Инициатива PURLUrl См. такжеUrl ПримечанияUrl СсылкиUrl1990 годIETFURIАльвеолярные дрожащие согласныеАнглийский языкБернерс-Ли, ТимВсемирная паутинаЗнак долготы (символ МФА)Знак дополнительного ударенияЗнак ударения (символ МФА)Неогублённый гласный заднего ряда нижнего подъёмаНеогублённый гласный переднего ряда средне-верхнего подъёмаОгублённый гласный заднего ряда верхнего подъёмаПалатальный аппроксимантПереднеязычный латеральный аппроксимантЦЕРН

🔥 Trending searches on Wiki Русский:

ЗендеяВедьмак (серия романов)ПасхаКХЛ в сезоне 2023/2024Чёрный дельфинВоронежКассандра НоваЗемляГостья из будущегоМуньяин, ИкерMGM-140 ATACMSКатегории годности к военной службеДжексон, МайклОрден Красной ЗвездыНосов, Николай НиколаевичИрландияРадио «Свобода»Валдай (автомобиль)Шеф (телесериал)Горбачёв, Михаил СергеевичДжобс, СтивНидерландыОрден «За заслуги перед Отечеством» IV степениТитаникИнцестКарпушенко, Елена ЛьвовнаМуцениеце, Агата ЭдгаровнаЦарукян, Арман НаировичАлексеева, Ирина ВячеславовнаСодружество Независимых ГосударствЗолотая ОрдаЕвразияСлово пацана. Кровь на асфальтеОдноклассники (социальная сеть)Булгаков, Михаил Афанасьевич250 лучших фильмов по версии IMDbКонтинентКурваРомео и ДжульеттаВторая мировая войнаХодорковский, Михаил БорисовичBrawl StarsЛолита (роман)PinterestХрущёв, Никита СергеевичОдин день Ивана ДенисовичаОбласова, Кристина Александровна115-я отдельная механизированная бригадаЕкатерина IIОрден святого благоверного великого князя Димитрия ДонскогоГерманова, Любовь АлексеевнаВнешняя политика БССРТокугава ИэясуГуцул, Евгения АлександровнаВойна и мирЕлизавета IIПрезидентские выборы на Украине (2024)Михалков, Никита СергеевичСтрейзанд, БарбраШукшин, Василий МакаровичГлобальные проблемыAIM-9 SidewinderДворжецкий, Владислав ВацлавовичDNS (компания)Лукашенко, Александр ГригорьевичРаспутин, Григорий ЕфимовичБорисов, Юрий АлександровичДжомолунгмаСписок государствСССтолыпин, Пётр АркадьевичFallout 3Вооружённые силы Российской ФедерацииЮмашева, Татьяна БорисовнаТвиттерИльин, Иван АлександровичOnlyFansЧайковский, Пётр Ильич🡆 More