URL

редактировать
Веб-адрес определенного файла или страницы

URL
Универсальный указатель ресурсов
СтатусОпубликовано
Впервые опубликовано1994; 26 лет назад (1994)
Последняя версияLiving Standard. 2020
ОрганизацияИнженерная группа Интернета (IETF)
КомитетВеб-приложение для гипертекста Рабочая группа по технологиям (WHATWG)
РедакторыЭнн ван Кестерен
АвторыТим Бернерс-Ли
Базовые стандартыRFC 3986. - Универсальный идентификатор ресурса (URI): общий синтаксис..

RFC 4248. - Схема telnet URI.. RFC 4266. - Схема URI суслика.. RFC 6068. - Схема URI «mailto».. RFC 6196. - Перемещение почтового сервера: Схема URI в Историческую..

RFC 6270. - Схема URI «tn3270»..
Связанные стандартыURI, URN
ДоменWorld Wide Web
ЛицензияCC BY 4.0
АббревиатураURL
Веб-сайтhttps://url.spec.whatwg.org

A Унифицированный указатель ресурсов (URL ), в просторечии называемый веб-адресом, является справочным к веб-ресурсу, который указывает его расположение в компьютерной сети и механизм его получения. URL-адрес - это особый тип унифицированного идентификатора ресурса (URI), хотя многие люди используют эти два термина как синонимы. URL-адреса чаще всего используются для ссылки на веб-страницы (http ), но также используются для передачи файлов (ftp ), электронной почты (mailto ), доступ к базе данных (JDBC ) и многие другие приложения.

Большинство веб-браузеров отображают URL-адрес веб-страницы над страницей в адресной строке. Типичный URL-адрес может иметь вид http://www.example.com/index.html, который указывает протокол (http), имя хоста ( www.example.com) и имя файла (index.html).

Содержание

  • 1 История
  • 2 Синтаксис
  • 3 Интернационализированный URL-адрес
  • 4 URL-адреса, относящиеся к протоколу
  • 5 См. Также
  • 6 Примечания
  • 7 Цитаты
  • 8 Ссылки
  • 9 Внешние ссылки

История

Простой пример унифицированного указателя ресурсов

Универсальные указатели ресурсов были определены в RFC 1738 в 1994 году Тимом Бернерсом-Ли, изобретатель World Wide Web и рабочая группа URI Internet Engineering Task Force (IETF), в результате сотрудничества, начатого в IETF Living Documents сеанс «птицы пера» в 1992 году.

Формат объединяет ранее существовавшую систему доменных имен (созданную в 1985 году) с путем к файлу, где косые черты используются для разделения каталога и имен файлов. Уже существовали соглашения, согласно которым имена серверов могли быть дополнены префиксом к полному пути к файлу, которому предшествовала двойная косая черта (//).

Бернерс-Ли позже выразил сожаление по поводу использования точек для разделения частей доменного имени внутри URI, жалея, что он не использовал косые черты повсюду, а также сказал, что, учитывая двоеточие после первого компонента URI, две косые черты перед доменным именем не нужны.

Ранний (1993)) черновик спецификации HTML, относящийся к "универсальным" локаторам ресурсов. Он был исключен в период с июня 1994 г. (RFC 1630 ) по октябрь 1994 г. (draft-ietf-uri-url-08.txt).

Синтаксис

Каждый URL-адрес HTTP соответствует синтаксису универсального URI. Общий синтаксис URI состоит из иерархической последовательности из пяти компонентов:

URI = scheme: [// полномочия] путь [? query] [# фрагмент]

где компонент полномочий делится на три подкомпонента:

Authority = [userinfo @] host [: port]

Это представлено в синтаксическая диаграмма как:

Схема синтаксиса URI

URI содержит:

  • непустой компонент схемы, за которым следует двоеточие (:), состоящее из последовательности символы, начинающиеся с буквы, за которыми следует любая комбинация букв, цифр, плюс (+), точка (.) или дефис (-). Хотя в схемах регистр не учитывается, в канонической форме используются строчные буквы, и в документах, в которых указаны схемы, должны использоваться строчные буквы. Примеры популярных схем: http , https , ftp , mailto , file , data и irc . Схемы URI должны быть зарегистрированы в Internet Assigned Numbers Authority (IANA), хотя на практике используются незарегистрированные схемы.
  • Необязательный компонент author, которому предшествуют два косая черта (//), содержащий:
    • Необязательный субкомпонент userinfo, который может состоять из имени пользователя и необязательного пароля, которому предшествует двоеточие (:), за которым следует символ at (@). Использование формата имя пользователя: парольв подкомпоненте информации о пользователе не рекомендуется из соображений безопасности. Приложения не должны отображать в виде открытого текста любые данные после первого двоеточия (:), обнаруженные в подкомпоненте userinfo, если только данные после двоеточия не являются пустой строкой (указывающей без пароля).
    • A host подкомпонент, состоящий либо из зарегистрированного имени (включая, помимо прочего, имя хоста ), либо из IP-адреса. IPv4 адреса должны быть в десятичной системе счисления, а адреса IPv6 должны быть заключены в скобки ().
    • необязательный подкомпонент порт перед двоеточием (:).
  • A компонент пути, состоящий из последовательности сегментов пути, разделенных косой чертой (/). Путь всегда определяется для URI, хотя указанный путь может быть пустой (нулевая длина). Сегмент также может быть пустым, что приведет к двум последовательным косым чертам (//) в компоненте пути. Компонент пути может напоминать или точно соответствовать пути файловой системы, но не всегда подразумевает отношение к единице. Если компонент полномочий присутствует, то компонент пути должен быть пустым или начинаться с косой черты (/). Если компонент полномочий отсутствует, тогда путь не может начинаться с пустого сегмента, то есть с двух косых черт (//), так как следующие символы будут интерпретироваться как авторитетный компонент. Последний сегмент пути может называться 'slug '.
разделитель запроса rПример
амперсанд ()ключ1 = значение1 ключ2 = значение2
точка с запятой (;)ключ1 = значение1; ключ2 = значение2
  • ), предшествующий необязательный компонент запроса вопросительным знаком (?), содержащим строку запроса неиерархических данных. Его синтаксис не очень хорошо определен, но по соглашению чаще всего представляет собой последовательность пар атрибут-значение, разделенных разделителем .
  • Необязательный компонент фрагмента, которому предшествует хэш (#). Фрагмент содержит идентификатор фрагмента , указывающий направление на вторичный ресурс, например заголовок раздела в статье, идентифицированный остальной частью URI. Когда основным ресурсом является документ HTML, фрагмент часто является атрибутом id определенного элемента, и веб-браузеры прокручивают этот элемент для просмотра.

Обычно веб-браузер разыменовать URL-адрес, выполнив запрос HTTP на указанный хост, по умолчанию на порт номер 80. URL-адреса, использующие схему https, требуют, чтобы запросы и ответы выполнялись через безопасное соединение с веб-сайтом.

Интернационализированный URL-адрес

Пользователи Интернета распределены по всему миру, использующие широкий спектр языков и алфавитов, и ожидают, что смогут создавать URL-адреса на своих собственных локальных алфавитах. Интернационализированный идентификатор ресурса (IRI) - это форма URL-адреса, которая включает символы Unicode. Все современные браузеры поддерживают IRI. Части URL-адреса, требующие особой обработки для разных алфавитов, - это имя домена и путь.

Имя домена в IRI известно как международное доменное имя (IDN). Программное обеспечение для Интернета и Интернета автоматически преобразует доменное имя в punycode, которое может использовать Система доменных имен; например, китайский URL http: // 例子. 卷筒纸становится http: //xn--fsqu00a.xn--3lr804guic/. xn-указывает, что символ изначально не был ASCII.

Имя пути URL-адреса также может быть указано пользователем в локальной системе записи. Если он еще не закодирован, он преобразуется в UTF-8, и любые символы, не входящие в базовый набор символов URL, экранируются как шестнадцатеричный с использованием процентного кодирования ; например, японский URL http://example.com/ 引 き 割 り.htmlстановится http://example.com/%E5%BC%95%E3%81%8D%E5 % 89% B2% E3% 82% 8A.html. Целевой компьютер декодирует адрес и отображает страницу.

URL-адреса, относящиеся к протоколу

Ссылки, относящиеся к протоколу (PRL), также известные как URL-адреса, относящиеся к протоколу (PRURL), - это URL-адреса, которые имеют протокол не указан. Например, //example.comбудет использовать протокол текущей страницы, обычно HTTP или HTTPS.

См. Также

Примечания

Цитирование

Ссылки

Внешние ссылки

Последняя правка сделана 2021-06-20 06:55:05
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте