URL统一资源定位符的完全解读

所属分类: 网络 / 网络其他 阅读数: 285
收藏 0 赞 0 分享

URL(Uniform Resource Locator ,统一资源定位符)是浏览器寻找信息时所需的资源位置。通过URL这种因特网的标准化名称,人类和应用程序才能找到并使用因特网上大量的数据资源。本文将介绍URL的语法,Web客户端支持的URL快捷方式,URL编码和字符规则等等。

服务器资源名被称为URI(统一资源标识符),而我们常说的URL,实际上是URI的一个子集,也是URI最常见的形式。除此之外,URI还包括URN(其通过名字来识别资源,与它们当前所处位置无关,现仍处于试用阶段)。实际上HTTP应用程序处理的只是URL,所以下面讲的基本都是URL。

1. URL的语法
大多数URL语法都建立在以下9部分构成的通用格式上,其中最重要的方案(scheme)、主机(host)和路径(path):

复制代码
代码如下:

<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>

方案(scheme):它会告诉负责解析URL的应用程序应该使用什么协议,其大小写无关。一般有http、https、ftp、mailto、telnet等等。例子:
复制代码
代码如下:
</font>http://www.baidu.com

主机与端口(host、port):主机标识了因特网上能够访问资源的宿主机器,可用主机名(域名)或IP地址表示;端口标识了服务器正在监听的网络端口,对下层使用TCP协议的HTTP来说,默认端口号为80。例子:http://115.156.216.106:3000
用户名与密码(user、password):有一些服务器需要用户输入用户名和密码才允许访问数据。若URL是FTP协议而没有指定这两者,浏览器会自动插入“anonymous”和一个默认密码。例子:
复制代码
代码如下:
ftp://anonymous:my_passwd@ftp.prep.ai.mit.edu/pub/gnu

路径(path):说明了资源位于服务器的什么地方,通常像一个分级的文件系统路径。例子:
复制代码
代码如下:
http://localhost:3000/css/common.css

参数(params):向应用程序提供它们所需的输入参数,以便正确地与服务器进行交互,形式为key-value对列表,由“;”将其与URL其余部分分隔开来。例子:
复制代码
代码如下:
ftp://prep.ai.mit.edu/pub/gnu;graphics=true

查询字符串(query):可以通过查询字符串来缩小所请求资源的范围,形式同样为key-value对,之间用字符“&”分隔,由“?”将其与URL其余部分分隔开来。例子:
复制代码
代码如下:
http://localhost/test?id=123&show=false

片段(frag):表示一个资源内部的片段,通常用于在页面中设置“书签”并实现页内跳转。片段出现在URL的最右边,前面有一个字符“#”。注意客户端不会将片段发送到服务器,浏览器从服务器获得整个资源后,会根据片段在页内跳转到指定的位置。例子:
复制代码
代码如下:
http://localhost/test#hehe

2. URL快捷方式
URL有两种方式:绝对的和相对的。像上面列举的都是绝对URL,包含了访问资源所需的全部信息。相对URL是一种简写方式,需要相对一个基础URL进行解析。
相对URL到绝对URL的转换处理,首先是要找到基础URL,一般可以显示提供(比如HTML文档定义一个标签显式指定基础URL),或者在封装资源中提供(比如HTML文档中的a标签链接,其基础URL就是这个HTML文档本身)。接着就是通过以下算法把相对URL转换成绝对URL。
2016616120208810.jpg (828×752)

3. URL字符与编码
通常来说,URL采用的是US-ASCII字符集,但是这有很多局限性,因此用一种“转义”表示法来表示不安全字符,通过这种编码机制来避开各种限制。这种转义表示法包含一个百分号“%”,后面跟着两个表示ASCII字符的十六进制数。例如URL中的“~”编码成“%7E”,空格编码成“%20”,“%”编码成“%25”。此外URL还有一些字符用作保留字符,如%/.#?;:@&=等等,此处不再赘述。
URL是一种强有力的工具,可以用来命名所有现存对象,也可以很方便地包含一些新格式。但它并不完美,它们表示的是实际的地址而不是准确的名字,这就意味着如果资源被移走了,URL也就失效了(404 not found)。URN就是为了应对这种情况的,无论对象搬移到什么地方,URN都能为对象提供一个稳定的名称。当然,URN背后的思想已经提出一段时间了,但是从URL转换成URN是一项巨大的工程,标准化工作的进程非常缓慢,所以现在因特网资源仍以URL来命名,而且这种趋势仍会保持相当长一段时间。

更多精彩内容其他人还在看

2.4G和5G的wifi哪个好 无线WiFi 2.4G和5G的区别

有些用户购买路由器之后发现有两个WiFi,其中一个显示有5G,我们知道普通的WiFi频段是2.4,那么这个5Gwifi和2.4的区别在哪?5g和2.4g又有什么区别?下面就给大家科普一下相关知识。 5gWiFi和2.4WiFi的区别 Wi-Fi是一种可以将个人电脑、手持设... 查看详情
收藏 0 赞 0 分享

公司如何防止信息外泄、防止泄露公司商业机密、防止公司数据泄露方案

在知识经济时代,企业之间的商业竞争越来越表现为核心技术、知识产权、独有配方等商业机密的竞争。一旦企业掌握了这些核心优势,将会在市场竞争中处于明显领先优势。因此,这些核心资产的泄露,同样也会给企业带来致命的风险,甚至会影响到企业的生死存亡。保护商业机密的安全,已经成为企业管理者的共... 查看详情
收藏 0 赞 0 分享

局域网如何共享文件、共享文件设置密码、共享文件夹监控的方法

如何设置局域网共享文件一直是让网管员比较头疼的问题。这一方面是因为操作系统共享文件设置比较复杂,尤其是需要为不同的用户设置不同的共享文件访问权限;另一方面,由于不同的windows操作系统设置共享文件的方法也不尽相同。因此,导致共享文件设置一直比较繁琐。本文以实例说明,如何设置不... 查看详情
收藏 0 赞 0 分享

禁止某个ip访问服务器共享文件、禁止某个电脑访问共享文件夹、禁止指定ip访问共享文件

在设置局域网共享文件访问权限的过程中,有时候我们会处于共享文件管理安全管理的需要,而禁止某个IP地址访问局域网共享文件、禁止某台电脑访问服务器共享文件。这一方面可以通过设置共享文件夹的用户访问权限来实现,比如我们可以禁止某个用户访问共享文件夹,但是有可能别人会将有权限访问共享文件... 查看详情
收藏 0 赞 0 分享

大势至局域网上网控制软件、电脑机密文件防泄密软件、服务器共享权限设置软件列表!

大势至公司是国内最早从事上网行为管理软件、电脑文件防泄密系统、服务器共享文件权限管理软件研发的厂家,目前公司旗下核心产品涵盖了从网络监控软件到信息安全防护软件和商业机密防泄密软件等领域,可以为企业提供整体的、一站式网络管理解决方案。 一、大势至USB端口禁用软件(电脑文件防泄密... 查看详情
收藏 0 赞 0 分享

大势至控制上网行为的软件、公司数据防泄漏系统和服务器共享权限设置软件方案

大势至(北京)软件工程有限公司是国内最早从事上网行为管理、信息安全防护和商业机密保护的专业厂家,通过旗下核心网络管理产品可以为企事业单位提供从上网行为控制到信息安全防护、商业机密保护一站式解决方案。 大势至局域网共享文件权限管理软件(点击详细了解:http://www.grab... 查看详情
收藏 0 赞 0 分享

大势至电脑文件加密软件、计算机文件夹加密软件、本地磁盘加密软件使用说明

大势至电脑文件加密软件(http://www.grabsun.com/dnwjjm.html)是大势至(北京)软件工程有限公司推出的一款专业的电脑文件加密系统,本系统是国内首款融合了应用层和驱动层双层透明加密技术,并基于椭圆加密算法而构建的、不可破解的电脑文件加密软件,可以有效防... 查看详情
收藏 0 赞 0 分享

网络管理常用命令之二 Ipconfig 命令详解(图文)

Ipconfig 命令... 不带参数... /all 参数... /release 和 /realease6 参数... /Renew 和 /Renew6 参数... /flushdns 参数... /displaydns 参数 Ipconfig 命令 ipco... 查看详情
收藏 0 赞 0 分享

网络管理常用命令之三 Netstat 命令详解(图文)

Netstat Netstat是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的TCP网络连接,TCP和UDP监听,进程内存管理以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的... 查看详情
收藏 0 赞 0 分享

网络管理常用命令之四 Nbtstat 命令使用详解(图文)

Nbtstat 该命令用于显示本地计算机和远程计算机的基于 TCP/IP(NetBT) 协议的 NetBIOS 统计资料、 NetBIOS 名称表和 NetBIOS 名称缓存。 NBTSTAT 可以刷新 NetBIOS 名称缓存和注册的 Windows Internet 名称服... 查看详情
收藏 0 赞 0 分享
查看更多