统一资源定位符
统一资源定位符(英语:Uniform Resource Locator,缩写:URL,或称统一资源定位器、定位地址、URL地址[1])俗称网页地址,简称网址,是因特网上标准的资源的地址(Address),如同在网路上的门牌。它最初是由蒂姆·伯纳斯-李发明用来作为万维网的地址,现在它已经被万维网联盟编制为因特网标准RFC 1738。
在网际网路的历史上,统一资源定位符的发明是一个非常基础的步骤。统一资源定位符的语法是一般的,可扩展的,它使用美国信息交换标准代码的一部分来表示因特网的地址。统一资源定位符的开始,一般会标志着一个计算机网络所使用的网络协议。
统一资源定位符的标准格式如下:
[协议类型]://[服务器地址]:[端口号]/[资源层级UNIX文件路径][文件名]?[查询]#[片段ID]
统一资源定位符的完整格式如下:
[协议类型]://[访问资源需要的凭证信息]@[服务器地址]:[端口号]/[资源层级UNIX文件路径][文件名]?[查询]#[片段ID]
其中[访问凭证信息]、[端口号]、[查询]、[片段ID]都属于选填项。
语法
[编辑]超文本传输协议的统一资源定位符将从因特网获取信息的五个基本元素包括在一个简单的地址中:
- 传送协议
- 层级URL标记符号(为“//”,固定不变)
- 访问资源需要的凭证信息(可省略)
- 服务器(通常为域名,有时为IP地址)
- 端口号(以数字方式表示,若为预设值可省略)
- 路径(以“/”字元区别路径中的每一个目录名称)
- 查询(GET模式的表单参数,以“?”字元为起点,每个参数以“&”隔开,再以“=”分开参数名称与资料,通常以UTF-8的URL编码,避开字元冲突的问题)
- 片段(以“#”字元为起点[2][3])
示例
[编辑]以“https://zh.wikipedia.org:443/w/index.php?title=随机页面”为例,其中:
- https,是协定;
- zh.wikipedia.org,是伺服器;
- 443,是服务器上的网络端口号;
- /w/index.php,是路径;
- ?title=Special:随机页面,是询问。
大多数网页浏览器不要求用户输入网页中“https://”的部分,因为绝大多数网页内容是超文本传输协议文件。同样,“443”是超文本传输安全协议文件的常用端口号(而“80”是超文本传输协议文件的常用端口号),因此一般也不必写明。一般来说用户只要键入统一资源定位符的一部分(如“zh.wikipedia.org/w/index.php?title=Special:随机页面”)就可以了。
由于超文本传输协议允许服务器将浏览器重定向到另一个网页地址,因此许多服务器允许用户省略网页地址中的部分,比如“www”。从技术上来说这样省略后的网页地址实际上是一个不同的网页地址,浏览器本身无法决定这个新地址是否通,服务器必须完成重定向的任务。
相对Protocol URL
[编辑]相对Protocol links (PRL,又称为相对protocol URLs (PRURL), 是没有指定协议的URL。例如,//example.com 将使用当前页面的协议,通常是 HTTP 或 HTTPS。[4][5]
其它使用
[编辑]统一资源定位符不但被用作网页地址,JDBC 客户端也使用统一资源定位符连接其数据库服务器。作为对比,ODBC 的连接字符串作用相同,但并不采用 URL 格式,而是分号和等号分隔的键值对。
以下是一个 Oracle 数据库的统一资源定位符:
jdbc:datadirect:oracle://myserver:1521;sid=testdb (页面存档备份,存于互联网档案馆)
参见
[编辑]参考资料
[编辑]- ^ 中国规范术语 - 检索结果. 中国规范术语. (原始内容存档于2017-10-21).
【所属学科】计算机科学技术→网络与数据通信 【汉语推荐使用规范名词】统一资源定位地址 【简称】URL地址 【见载】《计算机科学技术名词(第二版)》科学出版社,2002
- ^ jihite. URL中“#” “?” &“”号的作用 - jihite - 博客园. www.cnblogs.com. 博客园. [2017-05-24]. (原始内容存档于2017-05-20) (中文(中国大陆)).
- ^ 阮一峰. URL的井号 - 阮一峰的网络日志. www.ruanyifeng.com. ruanyifeng.com. [2017-05-24]. (原始内容存档于2017-06-08).
- ^ Glaser, J. D. Secure Development for Mobile Apps: How to Design and Code Secure Mobile Applications with PHP and JavaScript 1st. CRC Press. March 10, 2014: 193 [12 October 2015]. ISBN 978-1-48220903-7. (原始内容存档于2023-04-02) (美国英语).
- ^ Schafer, Steven M. HTML, XHTML, and CSS Bible 1st. John Wiley & Sons. 2011: 124 [12 October 2015]. ISBN 978-1-11808130-3. (原始内容存档于2023-04-02) (美国英语).