且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

URI与URL区别

更新时间:2022-05-09 01:19:16

1.什么是URI

Web上可用的每种资源:HTML文档、图像、视频片段、程序等,由一个通过通用资源标志符(Universal Resource Identifier, 简称"URI")进行定位。

URI一般由三部分组成:
   1. 访问资源的命名机制。(http/ftp..)
   2. 存放资源的主机名。(xx.com)
   3. 资源自身的名称,由路径表示。(././index.php)


如:http://xuqin.blog.51cto.com/user_index.php,这个URI是这样的:这是一个可通过HTTP协议访问的资源,位于主机xuqin.blog.51cto.com上,通过路径“user_index.php”访问。

又如:这是URI的另一个例子,指向一个用户的邮箱:<A href=mailto:web@webjx.com>写给站长</A>

注:大多数读者可能熟悉"URL",而不是URI。URL是RUI命名机制的一个子集

片段标志符
有的URI指向一个资源的内部。 这种URI以"#"结束,并跟着一个anchor标志
符(称为片段标志符)。例如,下面是一个指向section_2的URI:http://somesite.com/html/top.htm#section_2

相对URI
相对URI 不包含任何命名规范信息。它的路径通常指同一台机器上的资源。相
对URI可能含有相对路径(如,“..”表示上一层路径),还可能包含片段标志符。
为了说明相对URI,假设我们有一个基本的URI http://www.acme.com/support/intro.htm

下面的链接中使用了相对URI:<A href="104/2627604.shtml">网页陶吧</A>
它扩展成完全的URI就是 "http://homepage.webjx.com/104/2627604.shtml"。

下面是一个图像的相对URI:
<IMG src="http://www.webjx.com/htmldata/TLimages/img/head/logo.gif" alt="logo">
它扩展成完全的URI就是 "http://www.webjx.com/TLimages/img/head/logo.gif"。

在HTML中,URI被用来:
    * 链接到另一个文档或资源(参看a和LINK元素)。
    * 链接到一个外部样式表或脚本(参看LINK和SCRIPT元素)。
    * 在页内包含图像、对象或applet(参看IMAG、OBJECT、APPLET和INPUT元素)。
    * 建立图像映射(参看MAP和AREA元素)。
    * 提交一个表单(参看FORM)。
    * 建立一个框架文档(参看FRAME和IFRAME元素)。
    * 引用一个外部参考(参看Q、BLOCKQUOTE, INS和DEL元素)。
    * 指向一个描述文档的metadata(参看HEAD元素)。

2.什么是URL

URL是Uniform Resource Location的缩写,译为“统一资源定位符”。通俗地说,URL是Internet上用来描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上,特别是著名的Mosaic。采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。

URL的格式

URL的格式由下列三部分组成:
   1. 第一部分是协议(或称为服务方式);
   2. 第二部分是存有该资源的主机IP地址(有时也包括端口号);
   3. 第三部分是主机资源的具体地址。,如目录和文件名等。


第一部分和第二部分之间用“://”符号隔开,第二部分和第三部分用“/”符号隔开。第一部分和第二部分是不可缺少的,第三部分有时可以省略。

URL示例

文件的URL:用URL表示文件时,服务器方式用file表示,后面要有主机IP地址、文件的存取路径(即目录)和文件名等信息。有时可以省略目录和文件名,但“/”符号不能省略。
例一:file://ftp.webjx.com/soft/file/robots.txt,代表存放主机ftp.webjx.com上的soft/file/目录下的一个文件,文件名是robots.txt。
例二:file://ftp.webjx.com/pub,代表主机ftp.webjx.com上的目录/pub。
例三:file://ftp.webjx.com/,代表主机ftp.webjx.com上的根目录。

Gopher的URL:Gopher服务器有可能使用特殊的端口,在这种情况下,主机IP地址与端口之间要用“:隔开。
例一:gopher://gopher.webjx.com/,表示主机gopher.webjx.com上的gopher服务器。
例二:gopher://gopher.webjx.com:1234,表示主机gopher.webjx.com上的gopher服务器,在端口1234上。

网络新闻的URL:利用URL表示网络新闻组时,如果是usenet的话只要指定出新闻组的名字即可。
例如:news:rec.gardening,表示usenet上的rec.gardening新闻组(园艺)。

HTTP的 URL:使用超级文本传输协议HTTP,提供超级文本信息服务的资源。
例一:http://homepage.webjx.com/175/2603675.shtml,其计算机域名为homepage.webjx.com。超级文本文件(文件类型为.shtml)是在目录/175下的2603675.shtml。这是天极网的一台计算机。




      本文转自许琴 51CTO博客,原文链接:http://blog.51cto.com/xuqin/887954,如需转载请自行联系原作者