在互联网中,任何一个可访问的文件或文档都具有一个唯一的地址,这种地址称为统一资源定位符(Uniform Resource Locator,URL),也被称为网址。每个 URL 都有其对应的文件(文档),例如 http://c.biancheng.net/view/7410.html 对应的是《网站到底是什么》这篇文章,https://www.baidu.com/index.html 对应的则是百度的官网首页。
URL 是互联网的基础,最常见的形式就是网页通过链接,也就是 <a> 标签来包含其它 URL,用户通过点击,从当前 URL 跳转到另一个 URL。下面我们看一下 URL 是如何构成的。
1. URL的构成
URL 遵守一种标准的语法,它由协议、主机名、域名、端口、路径、以及文件名这六个部分构成,其中端口可以省略。具体语法规则如下:
scheme://host.domain:port/path/filename
在上述语法规则中,scheme 表示协议,host 表示主机名,domain 表示域名,port 表示端口(可以省略),path 表示文件的路径,filename 表示文件名称。接下来我们详细看一下这几部分到底是如何使用的。
1) 协议
协议用来指明客户端和服务器之间通信的类型。我们经常用到的协议有四种:http、https、ftp 以及 file。这四种协议的使用场景如下表所示:
协议使用场景
协议 | 使用场景 |
---|---|
http(HyperText Transfer Protocol) | 超文本传输协议。http 协议可以将编码为超文本的数据从一台计算机传送到另一台计算机,不进行加密。 |
https(HyperText Transfer Protocol over SecureSocket Layer) | 安全超文本传输协议。以安全为目标的 http 通道,安全网页,加密所有信息交换。 |
ftp(File Transfer Protocol) | 文件传输协议。 |
file | 本机上的文件。 |
2) 主机名
主机名可以向浏览器提供文件站点的名称。www 是我们常见的主机名,例如百度的网址 https://www.baidu.com/、淘宝的网址 https://www.taobao.com/ 使用的都是 www 的主机名。除此之外,还有很多网站使用的是其它主机名。例如C语言中文网的网址 http://c.biancheng.net/ 的主机名是c,网易云音乐的网址 https://music.163.com/ 的主机名是 music。
3) 域名
域名和主机名一起使用,被用来定义服务器的地址。Web 服务器遵守数字网际协议(Internet Protocol,IP),每一台连接到因特网的计算机都有一个固定的 IP 地址。域名即 IP 地址的别名,因为一般的 IP 地址都是长串的数字,为了方便记忆所以使用域名进行替代。简单来说,没有域名(IP)我们就不能上网。
4) 端口
端口用来定义主机上的端口号。如果不写,http 的默认端口号是 80,https 的默认端口号是 443,ftp 的默认端口号是 21。还是拿 C语言中文网举例说明,不论用户输入 http://c.biancheng.net/ 还是 http://c.biancheng.net/:80,浏览器都会解析为 C语言中文网的链接。
5) 路径
路径指定服务器上文件的所在位置。就像我们自己在计算机上保存文件时所指定的文件夹一样,Web 服务器上的文件也有可能是存放在子目录(就是文件夹中的子文件夹)中的。如果是这样,路径中的相邻文件夹需要使用斜线(/)隔开。例如 http://c.biancheng.net/view/views/7410.html 这个网址,它的路径就是 /view/views。
6) 文件名
文件名用来定义文档或资源的名称。和路径类似,路径指的是文件夹,而它指的是文件夹中的文件。我们在《网站到底是什么》这篇文章中讲到过网页文件的后缀有很多种,比如.html
、.php
、 .jsp
、.asp
等。
协议需要与 URL 的其它部分用://
隔开。百度的网址后面的.com
以及 C语言中文网的.net
又称作域后缀(扩展名),用于表明该主机所在的域的类型。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/300.html