В чем разница между URI и URL?

Я прочитал следующие страницы:

Я знаю основные сведения об URL, URN и URI; но мало на их различиях . То, что я не могу понять, находится на странице, например: http://www.bernzilla.com/item.php?id=100, в которой находится URL, URN и URI!
URI - это целая часть, но URL и URN?

Изображение из wikipedia

Edit:
от w3c.org:

  

URL-адрес - это тип URI, который идентифицирует ресурс через   представление его механизма первичного доступа (например, его сети   «location»), а не некоторыми другими атрибутами, которые могут иметь.

из www.damnhandy.com :

  

В настоящее время считается неправильным использование URL-адреса при описании приложений.

Теперь атрибут id? Как насчет части приложения? PHP-приложение?

url
35 голосов | спросил undone 2 ndEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 02 Sep 2011 17:04:48 +0400 2011, 17:04:48

3 ответа


33

URI /URL Venn Diagram

URL - Единый указатель ресурсов

Содержит информацию о том, как извлечь ресурс из своего местоположения. Например:

  • http://example.com/mypage.html
  • ftp://example.com/download.zip
  • электронная почта: [email protected]
  • Файл: ///home/user/file.txt
  • тел: 1-888-555-5555
  • http://example.com/resource?foo=bar#fragment
  • /other/link.html (относительный URL-адрес, полезен только в контексте другого URL-адреса)

URL-адреса всегда начинаются с протокола (http) и обычно содержат информацию, такую ​​как имя сетевого хоста (example.com) и часто путь к документу (/foo/mypage.html). URL-адреса могут содержать параметры запроса и идентификаторы фрагментов.

URN - Единое имя ресурса

Определяет ресурс уникальным и постоянным именем. Обычно он начинается с префикса urn: Например:

  • urn: isbn: 0451450523, чтобы идентифицировать книгу по ее номеру ISBN.
  • urn: uuid: 6e8bc430-9c3a-11d9-9669-0800200c9a66 глобально уникальный идентификатор
  • urn: публикация: книга - пространство имен XML, которое идентифицирует документ как тип книги.

URN могут идентифицировать идеи и концепции. Они не ограничиваются идентификацией документов. Когда URN действительно представляет документ, его можно преобразовать в URL-адрес с помощью «resolver». Затем документ можно загрузить с URL-адреса.

URI - Единый идентификатор ресурса

URI включают URL, URN и другие способы идентификации ресурса.

Примером URI, который не является ни URL-адресом, ни URN, будет URI данных таких как data:, Hello% 20World. Это не URL или URN, потому что URI содержит данные. Он не называет его и не указывает, как его найти по сети.

Существуют также единые ссылки ресурсов (URC), которые указывают на метаданные о документе, а не на сам документ. Примером URC будет идентификатор для просмотра исходного кода веб-страницы: view-source: http: //example.com/. URC - это другой тип URI, который не является ни URL, ни URN.

Часто задаваемые вопросы

Я слышал, что больше не должен указывать URL-адрес, почему?

Спецификация W3 для HTML говорит, что href тега привязки может содержать URI, а не только URL-адрес. Вы должны иметь возможность вводить URN, например <a href = "urn: isbn: 0451450523">. Затем ваш браузер будет разрешать этот URN URL-адресу и загружать книгу для вас.

Предоставляют ли какие-либо браузеру какие-либо документы для документов URN?

Не то, что я знаю, но современный веб-браузер реализует схему URI данных.

Имеет ли разница между URL и URI какое-либо отношение к относительной или абсолютной?

Нет. Оба относительных и абсолютных URL - это URL (и URI).

Разница между URL и URI связана с тем, имеет ли он параметры запроса?

Нет. Оба URL с параметрами запроса и без него - это URL (и URI).

Имеет ли разница между URL и URI какое-либо отношение к тому, имеет ли он идентификатор фрагмента?

Нет. Оба URL с идентификаторами фрагментов и без них являются URL (и URI).

Но разве W3C теперь не говорит, что URL-адреса и URI - это одно и то же?

Да. W3C понял, что в этом есть путаница. Они выпустили документ по разъяснению URI , в котором говорится, что теперь можно использовать термины URL и URI взаимозаменяемо (для обозначения URI). Теперь нецелесообразно строго сегментировать URI для разных типов, таких как URL, URN и URC.

Может ли URI быть как URL, так и URN?

Определение URN теперь более слабое, чем указано выше. последние RFC на URI говорит, что любой URI теперь может быть URN (независимо от того, начинается с urn:), если у него есть «свойства имени». То есть: он глобально уникален и настойчив, даже когда ресурс перестает существовать или становится недоступным. Пример: URI, используемые в доктринах HTML, такие как http://www.w3.org/TR/html4/strict.dtd. Этот URI будет продолжать называть переходный тип документа HTML4, даже если страница на веб-сайте w3.org была удалена.

ответил Stephen Ostermiller 5 MaramThu, 05 Mar 2015 00:48:27 +03002015-03-05T00:48:27+03:0012 2015, 00:48:27
9

Я думаю, что эти статьи достаточно хорошо объясняют. Чтобы ответить на ваш вопрос - все этого URL-адреса:

http://www.bernzilla.com/item.php?id=100

Каждый бит его - http: www.bernzilla.com и т. д. имеет свое собственное имя:

  • http: это схема
  • www - это субдомен
  • bernzilla.com - это домен
  • com - это домен верхнего уровня или TLD
  • (там может быть папка или путь, например, /dir/item.php, но нет)
  • item.php - это страница или имя файла с расширением php
  • id = 100 - строка запроса

Я вижу, что, учитывая эту диаграмму из Википедии, почему вы спрашиваете. Эта диаграмма говорит, что существует два типа URI - URL и URN, а нечеткий бит в середине - это то, что может быть и то и другое.

ответил paulmorriss 2 ndEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 02 Sep 2011 17:12:19 +0400 2011, 17:12:19
6

Неверно, что указанный вами URL-адрес состоит из URL-адреса и части URN.

http://www.bernzilla.com/item.php?id=100 - это URL и URI.

В основном URI - это надмножество URL-адресов и URN. Также существует некоторое совпадение между URL-адресами и URN.

  

URI идентифицирует ресурс либо по местоположению, либо по имени, либо по обоим.

Таким образом, любой URL-адрес является URI, любой URN является URI, но не каждый URI является URL-адресом.

ответил Kris 2 ndEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 02 Sep 2011 18:03:09 +0400 2011, 18:03:09

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132