URL(uniform resource locator,统一资源定位符)就是我们访问网站时,浏览器要用到的网址。如,http://hackr.jp/就是URL。一个URL唯一标识一个资源,通过一个与之对应的URL就能得到对应的资源。
UPI(uniform resource identifier,统一资源标识符),ULI是某个协议方案表示的资源定位标识符。协议方案是指访问资源时所用的协议类型名称。采用HTTP协议时,协议方案就是http。除此之外,还有ftp、mailto、telnet、file等。标准的URI协议方案有30种。
“RFC3986:统一资源标识符通用语法”中列举了几种URI例子,如下所示:
ftp://ftp.is.co.za/rfc/rfc1808.txt
http://www.ietf.org/rfc/rfc2396.txt
ldap://[2001:db8::7]/c=GB?objectClass?one
mailto:John.Doe@example.com
news:comp.infosystems.www.servers.unix
tel:+1-816-555-1212
telnet://192.0.2.16:80/
urn:oasis:names:specification:docbook:dtd:xml:4.1.2
protocol :// hostname[:port] / path / [;parameters][?query]#fragment
如上,URL的基本格式为 协议、主机域名、 资源文件目录
URI格式表示指定的URI,要使用涵盖全部必要信息的绝对URI、绝对URL以及相对URL。相对URL,是指从浏览器中基本URI处指定的URL,形如/image/logo.gif。
绝对URI格式:
登录信息:账户名再加上密码。这是可选项。
服务器地址:使用绝对URI必须指定待访问的服务器地址。地址可以是类似xxxx.com这种DNS可解析名称,或是192.xxx.x.x这类IPv4地址名,还可以是[0:0:0:0:0:0:0:1]这样用方括号括起来的IPv6地址名。
指定服务器连接的网络端口号。也是可选项,忽略则自动使用默认端口号。
带层次的文件路径:指定服务器上的文件路径来定位特指的资源。这与UNIX系统的文件目录结构相似
查询字符串:针对已指定的文件路径内的资源,可以使用查询字符串传入任意参数。此项可选。
片段标识符:使用片段标识符通常可标记出已获取资源中的子资源(文档内某个位置),也为可选项
URL和URI之间的主要区别URL用字符串标识某一互联网资源,URI表示资源的地点(互联网上处的位置)。可见URL是URI的子集。可以理解为URI是一个文件夹地址,如,C:Program FilesBaiduBaiduEditor。URL是一个该文件夹下的文件,如,C:Program FilesBaiduBaiduEditorbaidu.txt。URI标记资源的地址,URL不仅标记资源的地址,还直接标记了资源,得到了URL就可以得到对应的资源。
下面我们就来看看一下URL和URI的主要区别是什么
1、作用的区别
URL(统一资源定位符)主要用于链接网页,网页组件或网页上的程序,借助访问方法(http,ftp,mailto等协议)来检索位置资源。
URI(统一资源标识符)用于定义项目的标识,此处单词标识符表示无论使用的方法是什么(URL或URN),都要将一个资源与其他资源区分开来。
2、可以说URL是URI(URL是URI的子集),但URI永远不能是URL。
3、协议区别
URL指定要使用的协议类型,而URI不涉及协议规范。



