URL 的组成部分

URL(统一资源定位符)是 URI(通用资源标识)的特定类型。 URL 通常在因特网上查找现有资源。 当 Web 客户机向服务器发出对资源的请求时,使用 URL。

本主题是 URL 和 URI 的摘要。 如果您需要了解更多信息,URI 和 URL 的概念由 Internet Society 和 IETF(Internet Engineering Task Force,互联网工程任务组)征求意见文件 RFC 2396《 统一资源标识符(URI):通用语法》(Uniform Resource Identifiers (URI): Generic Syntax) 定义。 https://www.ietf.org/rfc/rfc2396.txt ).

简要地说,URI 是定义为识别资源的任何一个字符串。 URL 定义为按资源的位置或 用户访问它的方式,而不是按资源的名称或其他属性来识别资源的那些 URI。

IRI(国际资源标识)是一种较新的资源标识格式,允许使用适用于英语以外的其他本地语言的字符和格式。 请求和响应涉及的应用程序支持 IRI 时,IRI 可用于替代 URI 或 URL。 有关 IRI 的更多信息,请参阅 国际化资源标识 (IRI)

HTTP(HTTPS)的 URL 通常由三或四个组成部分组成:
  1. 方案。 方案识别用于访问因特网上的资源的协议。 它可以是 HTTP(不带 SSL)或 HTTPS(带 SSL)。
  2. 主机。 主机名识别拥有资源的主机。 例如,www.example.com。 服务器以主机的名义提供服务,但是主机和服务器之间没有一对一映射。 请参阅 主机名

    主机名也可以后跟端口号。 请参阅 端口号。 通常从 URL 省略服务的常用端口号。 因为多数服务器将熟知端口号用于 HTTP 和 HTTPS,所以多数 HTTP URL 省略端口号。

  3. 路径。 路径识别主机中 Web 客户机要访问的特定资源。 例如,/software/htp/cics/index.html
  4. 一个查询字符串。 如果使用查询字符串,那么它跟随路径部分,并且提供一串字符串,资源使用这些字符串可以完成某些操作(例如,作为用于搜索的参数或用于处理的数据)。 查询字符串通常是一串名称和值对;例如,term=bluebird。 Name and value pairs are separated from each other by an ampersand (&); for example, term=bluebird&source=browser-search.
URL 的方案和主机部分不定义为区分大小写,但是路径和查询字符串是区分大小写的。 通常,以小写形式指定整个 URL。
URL 的组成部分如下所示进行组合和定界:
scheme://host:port/path?query
  • 方案后跟冒号和两个正斜杠。
  • 如果指定端口号,那么主机名后面是号码,并用冒号分隔。
  • 路径名以单正斜杠开始。
  • 如果指定查询字符串,那么在它的前面加个问号。
图 1。 HTTP URL 语法
读取语法图跳过可视语法图http:// 主机名 (host name)IP 地址 :80:端口 (port)/路径部分?查询字符串
下面是 HTTP URL 的示例:
http://www.example.com/software/index.html
在指定了端口号的情况下,URL 为:
http://www.example.com:1030/software/index.html

URL 的后面可以跟片段标识。 URL 与片段标识之间使用的分隔符是字符 #。 片段标识用于使 Web 浏览器指向它刚检索的项中的引用或函数。 例如,如果 URL 标识 HTML 页面,那么可使用片段标识,以子节的标识来指示页面中的子节。 在此情况下,Web 浏览器通常向用户显示该页面,以使用户可以看到子节。 根据项的介质类型以及该介质类型的片段标识的已定义含义的不同,Web 浏览器针对片段标识执行的操作也会不同。

其他协议(如文件传输协议(FTP)或 Gopher)也使用 URL。 这些协议使用的 URL 可能与 HTTP 使用的 URL 的语法不同。