1)定义:

URI: Uniform Resource Identifier,通用资源标识符 ---是一个用于标识某一互联网资源名称的字符串(by 维基百科)

URL:Uniform Resource Locato,统一资源定位符

从关系上来看,URI属于父类,URL属于URI的子类。URL是URI的一个子集。URL一定是属于URI,反之不然二者的区别在于,URI表示请求服务器的路径,定义这么一个资源。而URL同时说明要如何访问这个资源(http://)。

2)命名规范:

URI一般由三部分组成: 
        访问资源的方案名 ( http、 https和 mailto等
        存放资源的主机名(或者域名)
        资源自身的名称,由路径表示

URI 路径像一个典型的文件路径名.下面就是一个典型的URI例子:

http://www.cisco.com/en/US/partners/index.htm 

         在上面的例子中,方案名为HTTP,主机名称为www.cisco.com。访问资源的路径为/en/US/partners/index.htm 。

除了上述方式外,还有一种相对URI。相对URI 不包含任何命名规范信息。它的路径通常指同一台机器上的资源。相对URI可能含有相对路径(如,“..”表示上一层路径)为了说明相对URI,假设我们有一个基本的URI http://www.acme.com/support/intro.htm 下面的链接中使用了相对URI: <A href="suppliers.htm">Suppliers</A> 。它扩展成完全的URI就是 "http://www.acme.com/support/suppliers.htm"。

URL一般由三部分组成

第一部分是协议(或称为服务方式,如http,file等); 
          第二部分是存有该资源的主机IP地址(有时也包括端口号); 
          第三部分是主机资源的具体地址,如目录和文件名等。

个人感觉,与URI相比,其组成方式与URI差别不大,可能存在的差别在于相对URI时可以不知道方案名和主机名,此外,URI主要不是用于指定一个资源的位置,而是用来对这个资源进行定义。

知乎上有人说

URI可以表示一个域,也可以表示一个资源。

URL只能表示一个资源。

个人觉得有一定道理,但是仍然不能完全解释两者区别,后续还要继续研究。

理解URI和URL的更多相关文章

  1. HTTP笔记:URI与URL

    URI与URL 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念.URI = Universal Resource Identifier 统一资源标志符URL = Universal ...

  2. 什么是URI,URL以及URN,你真的理解了吗。

    先举一个例子,让大家对这三个名词又一个基本的概念: 1⃣️ ftp://ftp.is.co.za/rfc/rfc1808.txt 2⃣️ http://www.cnblogs.com/nods/p/8 ...

  3. URI与URL的区别

    (原网址:http://zhidao.baidu.com/question/38764759.html) Web上可用的每种资源 - HTML文档.图像.视频片段.程序等 - 由一个通过通用资源标志符 ...

  4. Laravel 深入理解路由和URL生成

    原文地址: Laravel 深入理解路由和URL生成 在模板中我们一般不会直接写死url,而是用url助手生成url,本文介绍一下url助手的使用以及遇到的一些比较头疼的问题. 首先,我们创建了一个路 ...

  5. 理解URI

    ---恢复内容开始--- 参考 https://zh.wikipedia.org/wiki/%E7%BB%9F%E4%B8%80%E8%B5%84%E6%BA%90%E6%A0%87%E5%BF%97 ...

  6. Java网络编程-URI和URL

    前提 前面的一篇文章<Java中的Internet查询>分析完了如何通过IP地址或者主机名确定主机在因特网中的地址.任意给定主机上可能会有任意多个资源,这些资源需要有标识符方便主机之间访问 ...

  7. URI和URL、REST

    URI和URL URI(Uniform Resource Identifier ) 是一个紧凑的字符串用来标示抽象或物理资源.可以分为URL,URN或同时具备locators 和names特性的一个东 ...

  8. HTTP系列(一)URI、URL、URN的区别

    ​1.URI.URL.URN关系图 1)URI Uniform Resource Identifier 统一资源标识符 每个web服务器资源都有一个名字,服务器资源名被统称为统一资源标识符:URI就像 ...

  9. 【Web】URI和URL,及URL的编码

    URI和URL是什么,以及他们的区别 URL,Uniform Resource Locator,统一资源定位符.用于表示网络上服务器的资源所在位置,比如我们输入浏览器的地址. URI,Uniform ...

随机推荐

  1. C语言动态内存管理

    1-概述 动态存储管理的基本问题是:系统如何按请求分配内存,如何回收内存再利用.提出请求的用户可能是系统的一个作业,也可能是程序中的一个变量. 空闲块 未曾分配的地址连续的内存区称为“空闲块”. 占用 ...

  2. bzoj1176 2683

    我的第一道cdq分治题清明做了一下cdq分治的几道题,感觉这个东西实在是太厉害了离线大法好!关于几个经典的非数据结构做法具体可以看xhr神犇2013年的论文应用cdq分治的前提条件是不强制在线,修改操 ...

  3. bzoj1040

    论环形dp的重要! 其实这个环比较简单,稍微分析一下就知道, 这是一个简单环,并且每个联通块里只含有一个. 我觉得把处理环的关键,就是要找出环形和线形(树形)有什么区别. 如果我们从某处断开的做dp的 ...

  4. c程序设计语言_习题1-19_编写函数reverse(s)将字符串s中字符顺序颠倒过来。

    Write a function reverse(s) that reverses the character string s . Use it to write a program that re ...

  5. 使用IIS配合VS调试

    当我们使用Visual Studio调试(Debug)的时候,通常我们会选择VS自带的ASP.NET Developerment Server(也是默认选项),当第一次调试的时候(按F5或Ctrl+F ...

  6. EventHandlerList z

    写一个类时,有时候会在同一个类上添加很多事件,事件很多的话,是不容易管理的,.NET提供的EventHandlerList可以辅助多个事件的管 理,但不方便的地方是,它不是类型安全的,缺少类型安全,多 ...

  7. SQL Server查询性能优化——创建索引原则(一)

    索引是什么?索引是提高查询性能的一个重要工具,索引就是把查询语句所需要的少量数据添加到索引分页中,这样访问数据时只要访问少数索引的分页 就可以.但是索引对于提高查询性能也不是万能的,也不是建立越多的索 ...

  8. cocos2d-x ios8 输入框显示bug

    https://github.com/cocos2d/cocos2d-x/pull/8149

  9. 【原】Spark on YARN

    在YARN上运行Spark 在Spark0.6.0版本开始支持YARN模式,随后的版本在逐渐地完善. 在YARN上启动Spark 确保HADOOP_CONF_DIR或YARN_CONF_DIR属性的值 ...

  10. 【JS】Intermediate7:jQuery:DOM API

    1.jQuery also makes performing actions on many elements at the same time simple 2.eg:$('.note').css( ...