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. Android DownloadThread.run()学习

    android系统的下载代码写的很好,考虑的比较全面,值得我们学习.DownloadThread是其中执行下载的部分,下面从run进行研究. run(){ 一上来会设置一下下载线程的优先级:THREA ...

  2. Cannot Create Supplier Site (Address) (文档 ID 1069032.1)

    Error Address and Site Creation - Unable to create address and sites because of the following error ...

  3. 监控Nginx负载均衡器脚本

    1.编写脚本 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 vim nginx_pid.sh #!/bin/bash while  : do nginxpid=`ps -C ...

  4. jQuery里面的datepicker日期控件默认是显示英文的,如何显示中文或其他语言呢?

    jQuery里面的datepicker日期控件默认是显示英文的,如何让他显示中文或其他呢? [官方的写法]: (1)引入JS文件: <script type="text/javascr ...

  5. Frame 处理

    # -*- coding:utf-8 -*- """ 通过 id 或 name 识别处理 fram 框架 """ from selenium ...

  6. 搭建hdfs服务器集群的搭建+trash

    完全分布式搭建需要三台机器:node1.node2和node3 搭建时间之前首先要保持时间一致:date ntpdateyum install ntpdatentpdate -u ntp.sjtu.e ...

  7. SQL Server 2008如何进行数据库同步?

    复制有三种类:事务复制.快照复制.合并复制.事务复制是将复制启用后的所有发布服务器上发布的内容在修改时传给订阅服务器,数据更改将按照其在发布服务 器上发生的顺序和事务边界,应用于订阅服务器,在发布内部 ...

  8. HW3.1

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  9. IE-二级网页打不开

    无法打开二级链接的处理方法是重新注册如下的DLL文件: 在开始—运行里输入: regsvr32 Shdocvw.dll regsvr32 Shell32.dll(注意这个命令,先不用输) regsvr ...

  10. ldconfig及 LD_LIBRARY_PATH

    dconfig及 LD_LIBRARY_PATH 1. 往/lib和/usr/lib里面加东西,是不用修改/etc/ld.so.conf的,但是完了之后要调一下ldconfig,不然这个library ...