基本介绍
因特网上的可用资源可以用简单字符串来表示,该文档就是描述了这种字符串的语法和语义。而这些字符串则被称为:“统一资源定位器”(URL)。这篇说明源于万维网全球信息主动组织(World Wide Web global informationinitiative)介绍的概念。RFC1630《通用资源标志符》描述了一些对象数据,他们自1990年起就开始使用这些对象数据。这篇URL说明符合《因特网资源定位符的功能需求(Functional Requirements for Internet Resource Locators)》中说明的需求。这篇文档是由工程任务组织(IETF)的URI工作小组写的。
统一资源定位系统是专为标识Internet网上资源位置而设置的一种编址方式,平时所说的网页地址指的即是URL。 统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。2
URL语法
正如访问资源的方法有很多种一样,对资源进行定位的方案也有好几种。URL的一般语法只是为使用协议来建立新方案提供了一个框架,当然除了已经在这篇文档中定义过的。URL通过提供资源位置的一种抽象标志符来对资源进行定位。系统定位了一个资源后,可能会对它进行各种各样的操作,这些操作可以抽象为下面的几个词:访问,更新,替换,发现属性。一般来说,只有访问方法这一项在任何URL方案中都需要进行描述。
结构
基本URL包含模式(或称协议)、服务器名称(或IP地址)、路径和文件名,如"协议://授权/路径?查询"。 完整的、带有授权部分的普通URL语法看上去如下:协议://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志。2
第一部分 模式/协议:它告诉浏览器如何处理将要打开的文件。最常用的协议是超文本传输协议(Hypertext Transfer Protocol,缩写HTTP),这个协议可以用来访问网络。
第二部分 务器的名称或IP地址,后面是到达这个文件的路径和文件本身的名称。
URL以斜杠"/"结尾,而没有给出文件名,在这种情况下,URL引用路径中最后一个目录中的默认文件(通常对应于主页),这个文件常常被称为index.html或default.html。
字符编码
URL是由一串字符组成,这些字符可以是字母,数字和特殊符号。一个URL可以用多种方法来表现,例如:纸上的字迹,或者是用字符集编码的八位字节序列。URL的解释仅取决于所用字符的特性。在大多数URL方案中,都是使用URL不同部分的字符序列来代表因特网协议中所使用的八位字节序列。例如,在ftp方案中主机名,目录名和文件名就是这样的八位字节序列,它们用URL的不同部分代表。在这些部分里,一个八位字节数可以用这样的字符来表示:该字符在US—ASCII[20]编码字符集中的编码是这个八位字节数。另外,八位字节数可以被编成如下形式的代码:“%”后加两个十六进制数字(来自于“0123456789ABCDEF”),这两个十六进制数字代表了这八位字节数的值。(字符“abcdef”也可以用于十六进制编码)。如果存在下面的情况:八位字节数在US-ASCII字符集中没有相应的可显示字符,或者使用相应字符会产生不安全因素,或者相应的字符被保留用于特定的URL方案的解释,那么它们必须被编成代码。
- 没有相应的可显示字符:URL只能用US-ASCII字符编码集中的可显示字符表示。US-ASCII中没有用到十六进制的八位字节80-FF,并且00-1F和7F代表了控制字符,这些字符必须进行编码。
- 不安全:字符不安全的原因很多。空格字符就是不安全的,因为URL在被转录或者被排版或者被字处理程序处理后其中重要的空格可能被忽略,而可忽略的空格却有可能被解释了。“<”和“>”字符也是不安全的,因为它们被用来作为URL在文本中的分隔符;而在有些系统中用引号“"”来界定URL。“#”字符也是不安全的,因为它在万维网和其他一些系统中被用来从“片段/锚点”标志符中界定URL,所以它通常都要被编码。字符“%”被用来对其他字符进行编码,它也是不安全的。其他一些字符,如:"{", "}", "|", "\