URL与URI的区别和联系
转自:https://www.cnblogs.com/chengdabelief/p/6635045.html
简单理解是这样的:
理解URI和URL的区别,我们引入URN这个概念。
URI = Universal Resource Identifier 统一资源标志符
URL = Universal Resource Locator 统一资源定位符
URN = Universal Resource Name 统一资源名称
这三者的关系如下图:
也就是说,URI分为三种,URL or URN or (URL and URI)
URL代表资源的路径地址,而URI代表资源的名称。
通过URL找到资源是对网络位置进行标识,如:
- http://example.org/absolute/URI/with/absolute/path/to/resource.txt
- ftp://example.org/resource.txt
通过URI找到资源是通过对名称进行标识,这个名称在某命名空间中,并不代表网络地址,如:
- urn:issn:1535-3613
译者:华科小涛:http://www.cnblogs.com/hust-ghtao/:
初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了。(找资料还是英文啊,靠谱。。。)。
本篇博客翻译自:https://danielmiessler.com/study/url_vs_uri/,是在是一片简单实用的好文,对帮我们弄清概念很有帮助:
译文:

一直存在很多技术上的争论,其中最为妙的恐怕就是web地址应该叫什么的问题。通常情况就是这样:有人把地址栏的内容叫“URL”,这时候有些人就来劲了:“不!其实那时URI。。。”
对于这种纠正的反应呢,通常也有这么几种情况,心眼小的就寻思这人赶紧走吧,淡定点的就耸耸肩表示同意,火气大的就拔刀相向了好不?
那这篇文章呢,就对这个只是提供一个简单的总结,毕竟互黑也要黑到点子上是吧。
URI,URL,URN
从上面的那幅图可以看出来,一共有三个不同的概念URI,URL,URN。这讨论这样的问题时,最好的方法就是回到原点啊,这里我们在RFC 3986: Uniform Resource Identifier (URI): Generic Syntax里面收集了点资料:
“A Uniform Resource Identifier (URI) 是一个紧凑的字符串用来标示抽象或物理资源。”
“A URI 可以进一步被分为定位符、名字或两者都是. 术语“Uniform Resource Locator” (URL) 是URI的子集, 除了确定一个资源,还提供一种定位该资源的主要访问机制(如其网络“位置”)。“
那我们无所不知的维基百科把这段消化的很好,并描述的更加形象了:
“URI可以分为URL,URN或同时具备locators 和names特性的一个东西。URN作用就好像一个人的名字,URL就像一个人的地址。换句话说:URN确定了东西的身份,URL提供了找到它的方式。”
通过这些描述我们可以得到一些结论:
- 首先,URL是URI的一种(通过那个图就看的出来吧)。所以有人跟你说URL不是URI,他就错了呗。但也不是所有的URI都是URL哦,就好像蝴蝶都会飞,但会飞的可不都是蝴蝶啊,你让苍蝇怎么想!
- 让URI能成为URL的当然就是那个“访问机制”,“网络位置”。e.g.
http://orftp://.。 - URN是唯一标识的一部分,就是一个特殊的名字。
下面就来看看例子吧,当来也是来自权威的RFC:
ftp://ftp.is.co.za/rfc/rfc1808.txt(also a URL because of the protocol)http://www.ietf.org/rfc/rfc2396.txt(also a URL because of the protocol)ldap://[2001:db8::7]/c=GB?objectClass?one(also a URL because of the protocol)mailto:John.Doe@example.com(also a URL because of the protocol)news:comp.infosystems.www.servers.unix(also a URL because of the protocol)tel:+1-816-555-1212telnet://192.0.2.16:80/(also a URL because of the protocol)urn:oasis:names:specification:docbook:dtd:xml:4.1.2
这些全都是URI, 其中有些事URL. 哪些? 就是那些提供了访问机制的.
URL与URI的区别和联系的更多相关文章
- 【转】URL和URI的区别
[转]URL和URI的区别 译者:华科小涛:http://www.cnblogs.com/hust-ghtao/: 初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了.(找资料还 ...
- 一招明白URL和URI的区别
URL和URI的区别(示例): URL[统一资源定位器]: http://localhost:8080/api/account/queryAccountInfo URI[统一资源定位符]: /api/ ...
- URL 与URI 的区别
作者:Octocat链接:https://www.zhihu.com/question/21950864/answer/89835520来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...
- URL 和URI的区别
1.统一资源标志符URI就是在某一规则下能把一个资源独一无二地标识出来. URL:(Uniform/Universal Resource Locator 的缩写,统一资源定位符). URI:(Unif ...
- URL和URI的区别和联系
URI:Universal Resource Identifier,通用资源标识符: URL:Uniform Resource Locator,统一资源定位符: 其中,URL ...
- URL和URI的区别与联系
转自:http://win7452.blog.51cto.com/147513/45741 今天在看STRUTS配置的时候,发现一个问题,就是在看配置文件的时候,有时出现URL有时又是URI, 让我心 ...
- [译]URL和URI的区别
译者:华科小涛:http://www.cnblogs.com/hust-ghtao/: 初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了.(找资料还是英文啊,靠谱...). 本 ...
- 2017.11.10 web中URL和URI的区别
URI:Uniform Resource Identifier,统一资源标识符: •URL:Uniform Resource Locator,统一资源定位符: •URN:Uniform Resourc ...
- URL和 URI 的区别
URL:统一资源定位符 URI:统一资源标识符 URL 是 URI 的一个子集: 来源知乎 1.统一资源标识符 URI 就是在某一规则下能把一个资源独一无二的表示出来. 拿人做例子,假设这个世界上多有 ...
随机推荐
- wordpress 插件Simple Social Buttons import处漏洞复现
前言: 漏洞范围范围:simple socail buttons v2.0.4到v2.0.22之间的所有版本 利用条件,wordpress的普通用户 漏洞细节:该插件缺少权限的检查,非管理管权限执行管 ...
- Lepus监控之安装部署
PHP和Python都是跨平台的语言,所以理论上系统应该可以支持在不同的平台上运行.但是由于时间和精力以及资源有限,目前天兔系统只测试完善了Centos/RedHat系统的支持.我们目前提供的技术支持 ...
- 删除文件夹下各级子目录中的.svn文件
建立一个文本文件,取名为removeSvn.reg(扩展名由txt改为reg),内容如下 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHIN ...
- synchronized和lock以及synchronized和volatile的区别
synchronized和volatile区别synochronizd和volatile关键字区别: 1. volatile关键字解决的是变量在多个线程之间的可见性:而sychronized关键字解决 ...
- 汉化-PowerDesigner 16.5 汉化
转载: https://www.cnblogs.com/yeaicc/p/PowerDesigner16CN.html 一.背景 经常使用PowerDesigner,之前使用15版本,后来16出来后, ...
- python3 不知文件编码情况下打开文件代码记录
import chardet path='test.txt' bytes = min(100, os.path.getsize(path)) raw = open(path, 'rb').read(b ...
- python -反射hasattr、setattr、delattr
login.py #!/usr/bin/dev python# coding:utf-8 def index(): print u'欢迎访问xx网站首页' def login(): print u'登 ...
- oracle数据链接
using System; using System.Collections.Generic; using System.Data; using System.Data.OracleClient; u ...
- Elasticsearch 整合spring(不是sprig boot)
公司做统计任务,有使用Es做聚合操作,使用的是自己封装的版本,这边整合下原生spring,做下学习记录,随便看一下,发现差不多都是spring boot的案例...我该怎么办,...发现整合的过程其实 ...
- selenium 3.0变化
Selenium3.0的变化 最大的变化应该是去掉了Selenium RC 了,这是必然的结果.Selenium RC 是Selenium1.0的产物,Selenium2.0以WebDriver为主, ...