原文出处:http://stackoverflow.com/questions/176264/what-is-the-difference-between-a-uri-a-url-and-a-urn
html
当谈起URL、URI、URN时,仿佛他们是不一样的东西,可是单凭肉眼来看,他们看起来彷佛又是同样的。
那么,他们之间有什么明显区别呢?
(如下摘自stackoverflow网友回答)网络
1.Roger Pate网友
ide
URI用于识别,URL用于定位;然而,定位符一般也是标识符,所以每一条URL也是一个URI,但却有一些URI并不能称做URL。ui
一些实例:url
Roger Patespa
个人名字Roger Pate是一个标识符。这就像是一个URI,但却不能是一条URL,由于经过它你不会知道个人住址或者是联系方式。这样的话,仅在美国就会匹配到至少五个和我名字同样的人。orm
4914 West Bay Street, Nassau, Bahamas(巴哈马拿骚市西湾街4914号)htm
这是一个地点,一个物理位置的标识符。它既像一条URL又像一个URI(由于URL即URI),又间接地确认我是一个住在西湾街4914号的居民。在这个案例中,个人居住地址惟一地标识了我,可是要是我有一个舍友的话就另当别论了。blog
我之因此用"像"是由于这些例子并不按照所需的语法。ip
常见的混淆
如下引自维基百科
在计算机中,一个统一资源定位符(URL)是统一资源标识符(URI)的子集,它指定了一个已标识的可 用资源及检索机制。在流行的习惯用语、许多技术文档以及口头语言中,URL经常被错误地当成URI的同 义词使用。...(我加上的重点)
因为这两个词太容易混淆,许多产品及文档都错误地使用其中一个词代替另一个,指定他们本身的区别,或者把他们当同义词使用。
URNs
除了那些更受管制,并打算在空间和时间也必须是惟一的这些状况外,个人名字Roger Pate就能够说是一个统一资源名称(Uniform Resource Name)。
由于我如今与别人都使用这个叫作"Roger Pate"的名字,这个名字就不是全球惟一的了,也就不适合称做一个URN了。然而,即便没有其余家庭使用此名字,我是以我祖父的名字命名的,那么在时间上个人名字也就不是惟一的。即便事实上并不是如此,我以个人名字命名我后代的可能性也让其不适合做为一个URN。
URN有别于有着严格惟一性约束的URL,虽然两者都遵循URI的语法。
2.Stephen Ostermiller网友
URI -- 统一资源标识符
URI是使用一小串数字、字母和符号来识别文档的标准。它是在RFC 3986定义的:URI指的是通用句法。全部的URL、URN及URC都是URI。
URL -- 统一资源定位符
URL中包含了如何经过其位置来获取资源的信息。例如:
http://example.com/mypage.html
ftp://example.com/download.zip
mailto:user@example.com
file:///home/user/file.txt
tel:1-888-555-5555
http://example.com/resource?foo=bar#fragment
/other/link.html (一个相对URL,只有在另一个完整的URL上下文中才有用)
URL老是以一个协议头开始,一般包括诸如主机名(example.com)和一个文件路径(/foo/mypage.html)。URL可能也会有查询参数及片断识别符。
URN -- 统一资源名称
URN经过一个惟一及持续的名字来标识资源,但却没必要告诉你如何在网络上定位到它。它一般是以一个urn前缀的开头的。例如:
urn:isbn:0451450523 to identify a book by its ISBN number.
urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66 a globally unique identifier
urn:publishing:book - An XML namespace that identifies the document as a type of book.
URN能够识别想法和概念。他们并不限于识别文件。当一个URN表明一个文件时,它能够被一个解析器转换成一条URL。而后这个文件就这个用转换后的URL下载了。
URC -- 统一资源引用符
URC指的是一个文件的元数据,而不是文件自己。URC的一个例子是一个指定HTML网页的源代码,如:view-source:http://example.com/
Data URI
咱们能够直接将数据放到一个URI中,而不是在互联网上定位或命名它。一个数据URI:data:,Hello%20World。
3.几张图表带你更进一步理解三者关系