This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

URI

    Uniform Resource Identifiers (URI) используются для идентификации «ресурсов» в Интернете. Обычно они используются в качестве целей запросов HTTP, в таком случае URI представляет местоположение физического ресурса, такого как документ, фотография, двоичные данные и т.д. URI также могут использоваться для других действий, например, открытия почтового клиента, отправки текстовых сообщений или выполнение JavaScript, при использовании в других местах, таких как атрибут href HTML-ссылки <a>.

    URL и URN

    URL

    Самый популярный тип URI - это Uniform Resource Locator (URL), который также называют веб-адресом.

    https://newreal1.mobosoft.fun
    https://newreal1.mobosoft.fun/ru/docs/Learn
    https://newreal1.mobosoft.fun/ru/search?q=URL
    

    Любой из этих URL-ов может быть набран в адресной строке браузера чтобы сказать ему загрузить соответствующую страницу (ресурс).

    URL состоит из разных частей, некоторые - обязательны, а другие нет. Более сложный пример:

    http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument
    

    URN

    Uniform Resource Name (URN) - это URI, который идентифицирует ресурс по имени в конкретном пространстве имён.

    urn:isbn:9780141036144
    urn:ietf:rfc:7230
    

    Эти два URN-а соответствуют:

    • книга "1984" Джорджа Оруэлла,
    • IETF спецификация 7230, Hypertext Transfer Protocol (HTTP/1.1): Синтаксис и маршрутизация сообщений.

    Синтаксис Унифицированных Идентификаторов Ресурсов (URI)

    Схема или протокол

    Protocol

    http:// это пример протокола (схемы). Тут описывается какой протокол браузер должен использовать. Обычно это HTTP протокол или его безопасная версия - HTTPS. Интернет требует один из этих двух, но браузеры также знают как работать с некоторыми другими, например mailto: (чтобы открыть почтовый клиент) или ftp: для работы с передачей файлов. Популярные схемы:

    Схема Описание
    data Data URIs
    file Доступ к файлам на локальном компьютере
    ftp File Transfer Protocol (протокол передачи файлов)
    http/https Hyper text transfer protocol (Secure)
    mailto Адрес электронной почты
    ssh Протокол Secure shell для работы с серверами
    tel Телефон
    urn Uniform Resource Names
    view-source Исходный код ресурса
    ws/wss (Зашифрованные) соединения WebSocket

    Владелец (имя хоста)

    Domaine Name

    www.example.com - это доменное имя, идентификатор ответственного за это пространство имён. Идентифицирует, какой именно Веб-сервер получает запрос. Альтернативно, можно просто использовать IP address, но поскольку это не так удобно, то этот способ используется не часто.

    Порт

    Port

    :80 - это порт сервера. Он идентифицирует технические "ворота", которые нужны для доступа к ресурсу на сервере. Обычно порт не указывается, т.к. существуют общепринятые нормы о стандартных портах для HTTP (80 для HTTP и 443 для HTTPS). В других случаях обязательно нужно указывать.

    Путь

    Path to the file

    /path/to/myfile.html - это путь к ресурсу на Веб-сервере. Изначально путь типа этого указывал на физическое место файла на сервере, но сейчас всё чаще это псевдоним или описание некоторого абстрактного ресурса.

    Строка запроса (query string)

    Parameters

    ?key1=value1&key2=value2 - это дополнительные параметры, предоставляемые Веб-серверу. Это список пар "ключ=значение", разделённых символом & . Веб-сервер может использовать эти параметры как дополнительные инструкции, что именно сделать с ресурсом перед отправкой его пользователю. Каждый Веб-сервер имеет свои правила насчёт параметров, и единственный надёжный способ узнать как конкретный Веб-сервер обрабатывает эти параметры - это спросить того, кто контролирует Веб-сервер.

    Фрагмент

    Anchor

    #SomewhereInTheDocument - это "якорь" на другую часть ресурса. Якорь представляет собой что-то вроде "закладки" внутри ресурса, давая браузеру указание показать содержимое с определённого места. В HTML-документе, к примеру, браузер будет скроллить к точке где якорь определён, а на аудио/видео-документе браузер попытается перейти на время, указанное в якоре. Важно что часть, начинающаяся с # - никогда не пересылается серверу в запросе.

    Примечания по использованию

    Когда используются URLы в HTML содержимом, вам стоит использовать только несколько из этих схем. Когда идёт обращение к субресурсам (файлам, которые являются частью большого документа) — вам стоит использовать лишь HTTP и HTTPS. Браузеры сейчас перестают использовать FTP для загрузки ресурсов, из соображений безопасности.

    FTP до сих пор доступен на верхнем уровне (т.е. когда ссылка указывается в адресной строке или в ссылке), но некоторые браузеры могут делегировать загрузку FTP ресурсов другим приложениям.

    Примеры

    https://newreal1.mobosoft.fun/ru/docs/Learn
    tel:+1-816-555-1212
    git@github.com:mdn/browser-compat-data.git
    ftp://example.org/resource.txt
    urn:isbn:9780141036144
    mailto:help@supercyberhelpdesk.info
    

    Спецификации

    Спецификация Название
    RFC 7230, раздел 2.7: Uniform Resource Identifiers Hypertext Transfer Protocol (HTTP/1.1): Синтаксис и маршрутизация сообщений

    Читайте также