URL和 URI 的区别

URL:统一资源定位符

URI:统一资源标识符

URL 是 URI 的一个子集:

来源知乎 

1、统一资源标识符 URI 就是在某一规则下能把一个资源独一无二的表示出来。

  拿人做例子,假设这个世界上多有人的名字不能重复,那么名字就是 URI 的一个示例,通过名字这个字符串就可以表示出唯一的一个人。

  现实当中名字当然会重复的,所以身份证号才是 URI ,通过身份证号能让我们能且仅能确定一个人。

2、那统一资源定位符 URL 是什么呢?

  也那人做例子,然后跟 HTTP 的 url 作类比,就可以有:

  动物住址协议://地球/中国/浙江省/杭州市/西湖区/某大学/14号宿舍/525号寝/张三

  可以看到,这个字符串同样表示出了唯一的一个人,起到了 URI 的作用,所以 URL 是 URI 的子集。

  URL 是描述人的位置来唯一确定一个人的。

  在上文中我们用身份证号也可以唯一确定一个人,对于这个在杭州的张三,我们也可以用:
    身份证:123456789 来标识他。

  所以不管是用定位的方式还是编号的方式,我们都可以唯一确定一个人,都是 URI 的一种实现。而 URL 就是用定位的方式实现的 URI。

3、回到 WEB 上,假设所有的 html 文档都有唯一的编号,记作 html:xxxx, xxxx 是一串数字,即 html 文档的身份证号码,这个能唯一表示一个 HTML 文档,那么

  这个号码就是一个 URI 。

  而 URL 则通过描述是那个主机上那个路径上的文件来唯一确定一个资源,也就是定位的方式来实现的 URI。

  对于现在的网址我更倾向于叫它 URL,毕竟它提供了资源的位置信息,如果有一天网址通过号码来标识,变成了http://74123456.html,那感觉叫 URI 更合适,不过着样子的话还得想办法找到这个资源

参考:

  https://www.zhihu.com/question/21950864

原文地址:https://www.cnblogs.com/jcjc/p/11540380.html