URL:修订间差异
创建页面,内容为“{{Infobox | 标题 = 统一资源定位符 | 内容 = {{!}}- ! 中文名 {{!}} 统一资源定位符 {{!}}- ! 英文名 {{!}} Uniform Resource Locator {{!}}- ! 缩写 {{!}} URL {{!}}- ! 提出者 {{!}} 蒂姆·伯纳斯-李(Tim Berners-Lee) {{!}}- ! 首次发布 {{!}} 1994年(RFC 1738) {{!}}- ! 最新标准 {{!}} URL Standard(WHATWG 实时标准)<ref name="url-standard">[https://url.spec.whatwg.org/ URL Standard]</ref> {{!}}- ! 相关标准 {{!}} R…” |
无编辑摘要 |
||
| 第25行: | 第25行: | ||
}} | }} | ||
'''统一资源定位符'''( | '''统一资源定位符'''(缩写:'''URL'''),俗称'''网页地址'''或'''网址'''<ref name="c114">[https://baike.c114.com.cn/view.asp?id=7387-76D8FFAA 统一资源定位符(URL)]</ref>,是对[[万维网]]上资源(如网页、图像、文件等)的位置和访问方法的一种简洁表示。URL是[[统一资源标识符]](URI)的一种具体形式,它不仅唯一标识一个资源,还指明了如何定位和获取该资源<ref name="rfc3986">[https://datatracker.ietf.org/doc/html/rfc3986 RFC 3986: Uniform Resource Identifier (URI): Generic Syntax]</ref><ref name="wiki-url">[https://en.wikipedia.org/wiki/URL URL - Wikipedia]</ref>。URL由[[蒂姆·伯纳斯-李]](Tim Berners-Lee)发明,最初用于万维网的地址系统,随后由[[万维网联盟]](W3C)和[[互联网工程任务组]](IETF)制定为互联网标准RFC 1738<ref name="rfc1738">[https://datatracker.ietf.org/doc/html/rfc1738 RFC 1738: Uniform Resource Locators (URL)]</ref><ref name="c114" />。如今,URL是互联网基础设施中最基本的组成部分之一,几乎所有网络浏览器和网络应用都依赖URL来定位和访问在线资源<ref name="url-standard" />。 | ||
== 历史 == | == 历史 == | ||
2026年6月30日 (二) 08:30的版本
统一资源定位符(缩写:URL),俗称网页地址或网址[1],是对万维网上资源(如网页、图像、文件等)的位置和访问方法的一种简洁表示。URL是统一资源标识符(URI)的一种具体形式,它不仅唯一标识一个资源,还指明了如何定位和获取该资源[2][3]。URL由蒂姆·伯纳斯-李(Tim Berners-Lee)发明,最初用于万维网的地址系统,随后由万维网联盟(W3C)和互联网工程任务组(IETF)制定为互联网标准RFC 1738[4][1]。如今,URL是互联网基础设施中最基本的组成部分之一,几乎所有网络浏览器和网络应用都依赖URL来定位和访问在线资源[5]。
历史
URL的概念源于1990年蒂姆·伯纳斯-李为欧洲核子研究组织(CERN)开发的万维网项目。他设计了URL作为超文本系统中定位文档和资源的方式,与超文本传输协议(HTTP)和超文本标记语言(HTML)共同构成了万维网的三大核心技术[6][7]。
1992年,IETF成立了URI工作组,开始对URL进行标准化工作[4]。1994年,RFC 1738正式发布,由蒂姆·伯纳斯-李和IETF URI工作组共同编写,定义了URL的语法和格式[4][1]。此后,URL标准不断演进,RFC 3986(2005年)和RFC 3987(2006年)分别更新了URI和国际化资源标识符(IRI)的规范[5]。
2010年代起,WHATWG(Web超文本应用技术工作组)发布了URL实时标准(URL Living Standard),旨在统一和简化URL的解析与处理,逐步取代早期的RFC标准[5][3]。
结构
一个完整的URL通常由多个部分组成,其通用语法格式如下[1][2]:
协议 :// 主机名 [: 端口号] / 路径 [ ; 参数 ] [ ? 查询 ] [ # 片段 ]
其中方括号内的部分为可选项。各部分含义如下:
- 端口号(Port):服务器上用于接受请求的端口编号。各协议有默认端口(如HTTP为80,HTTPS为443),省略时使用默认值[1]。
- 参数(Parameters):部分协议支持的分号分隔的附加参数,现已不常见[1]。
- 查询(Query):用于向动态网页传递参数的字符串,以问号 `?` 开头,多个参数之间用 `&` 分隔,格式为 `键=值`[1]。
示例:`https://www.example.com:443/docs/page.html?lang=zh#section2`
与URI的关系
URL是统一资源标识符(URI)的一个子集。URI是一个更广义的概念,用于唯一标识一个资源,而URL不仅标识资源,还提供了定位和访问该资源的方法[2][3]。URI的另一个子集是统一资源名称(URN),它仅通过名称标识资源而不涉及位置[2]。
在实践中,URL和URI两个术语经常被混用,但技术上所有URL都是URI,反之则不一定成立[3]。
编码
URL中只能使用ASCII字符集的一部分字符。对于不在允许范围内的字符(如中文、空格、特殊符号等),需要进行百分号编码(Percent-encoding,又称URL编码)[8]。编码方式是将每个非ASCII字符或特殊字符转换为 `%` 后跟该字符ASCII码或UTF-8编码字节的两位十六进制表示[8][9]。
例如,空格字符(ASCII 32)编码为 `%20`,中文“上海”在UTF-8下编码为 `%E4%B8%8A%E6%B5%B7`[9]。
标准
URL的主要标准文件包括:
- RFC 1738(1994年):URL的原始标准,已废弃[4]。
- RFC 3986(2005年):URI通用语法标准,取代RFC 1738成为URL的主要参考[2]。
- RFC 3987(2006年):国际化资源标识符(IRI)标准,允许在URL中使用非ASCII字符[5]。
- WHATWG URL Standard(实时更新):当前最广泛实施的URL标准,定义了URL的解析、序列化和API,旨在统一各实现之间的差异[5][3]。
参考文献
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 统一资源定位符(URL)
- ↑ 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
- ↑ 3.0 3.1 3.2 3.3 3.4 3.5 URL - Wikipedia
- ↑ 4.0 4.1 4.2 4.3 RFC 1738: Uniform Resource Locators (URL)
- ↑ 5.0 5.1 5.2 5.3 5.4 引用错误:
<ref>标签无效;未给name(名称)为url-standard的ref(参考)提供文本 - ↑ Sir Timothy Berners-Lee - Royal Society
- ↑ URL的发展史:路径、片段、查询、身份验证
- ↑ 8.0 8.1 百分号编码 - MDN Web Docs
- ↑ 9.0 9.1 网址编码 - Google Developers