什么是URL?
URL 代表着是统一资源定位符(*Uniform Resource Locator*)。URL 无非就是一个给定的独特资源在 Web 上的地址。理论上说,每个有效的 URL 都指向一个唯一的资源。这个资源可以是一个 HTML 页面,一个 CSS 文档,一幅图像,等等。而在实际中,也有一些例外,最常见的情况就是一个 URL 指向了不存在的或是被移动过的资源。由于通过 URL 呈现的资源和 URL 本身由 Web 服务器处理,因此 web 服务器的拥有者需要认真地维护资源以及与它关联的URL。其基本格式如下:
1 | scheme://host[:port#]/path/.../[?query-string][#anchor] |
深入探究
下面是一些URL的示例:
1 | https://developer.mozilla.org |
您可以将上面的这些网址输进您的浏览器地址栏来告诉浏览器加载相关联的页面(或资源)。
一个URL由不同的部分组成,其中一些是必须的,而另一些是可选的。让我们以下面这个URL为例看看其中最重要的部分:
1 | http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument |

http
是协议。浏览器必须使用的协议通常都是HTTP
协议或是HTTP
协议的安全版,即HTTPS
。Web需要它们二者之一,但浏览器也知道如何处理其他协议,比如mailto
:(打开邮件客户端)或者ftp
:(处理文件传输),所以当你看到这些协议时,不必惊讶。

www.example.com
是域名。 它表明正在请求哪个Web服务器。或者,可以直接使用IP address, 但是因为它不太方便,所以它不经常在网络上使用。

:80
是端口。 它表示用于访问Web服务器上的资源的技术“门”。如果Web服务器使用HTTP协议的标准端口(HTTP为80,HTTPS为443)来授予其资源的访问权限,则通常会被忽略。否则是强制性的。

/path/to/myfile.html
是网络服务器上资源的路径。在Web的早期阶段,像这样的路径表示Web服务器上的物理文件位置。如今,它主要是由没有任何物理现实的Web服务器处理的抽象。

?key1=value1&key2=value2
是提供给网络服务器的额外参数。 这些参数是用 &
符号分隔的键/值对列表。在返回资源之前,Web服务器可以使用这些参数来执行额外的操作。每个Web服务器都有自己关于参数的规则,唯一可靠的方式来知道特定Web服务器是否处理参数是通过询问Web服务器所有者。

#SomewhereInTheDocument
是资源本身的另一部分的锚点. 锚点表示资源中的一种“书签”,给浏览器显示位于该“加书签”位置的内容的方向。例如,在HTML文档上,浏览器将滚动到定义锚点的位置;在视频或音频文档上,浏览器将尝试转到锚代表的时间。值得注意的是,#后面的部分(也称为片段标识符)从来没有发送到请求的服务器。
- Post title:Uniform Resource Locator (URL)
- Post author:洪笳淏
- Create time:2021-06-09 14:06:00
- Post link:https://jiahaohong1997.github.io/2021/06/09/Uniform Resource Locator(URL)/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.