浅析 URL

856 阅读2分钟

1.url

url(Uniform Resource Locator)主要由以下几个部分组成: 协议+域名+路径+查询参数+锚点。

协议:例如https://

域名:例如www.baidu.com

路径:例如/S

查询参数:例如?wd=hello&rsv_spt=1

锚点:例如#5(锚点只会在本地执行,不会发送到服务器)

www.baidu.com/s?wd=hello&…


2. DNS

DNS(Domain Name System)相当于是通过域名来查询ip的一个百科全书,输入域名后我们可以通过DNS查到所有的域名的ip。

我们可以通过nslookup来查询域名的所有ip。

HUANG@DESKTOP-T1ADIRC ~/Desktop
λ nslookup baidu.com
服务器:  UnKnown
Address:  fe80::1

非权威应答:
名称:    baidu.com
Addresses:  220.181.38.148
          39.156.69.79

3. ip

ip(internet protocol)的主要约定了两个方面:

  • 如何定位一个设备
  • 如何封装数据报文以根其他设备交流

一个域名可能会部署在不同的服务器上,所以会出现一个域名对应几个ip的情况。 当然,当多个域名部署在同一个服务器上时,会出现多个域名对应一个ip的情况。(通过host对应不同网页)

几个比较特别的域名:

  • 127.0.0.1 表自己
  • localhost 通过hosts指定为自己
  • 0.0.0.0 不表示任何设备

有了ip之后,我们还需要端口来对应不同的服务,其中0-1023端口是给系统使用的。

所以,ip定位设备,端口定位服务

我们可以通过ping来检查自己是否网络通畅。

HUANG@DESKTOP-T1ADIRC ~/Desktop
λ ping baidu.com

正在 Ping baidu.com [220.181.38.148] 具有 32 字节的数据:
来自 220.181.38.148 的回复: 字节=32 时间=41ms TTL=49
来自 220.181.38.148 的回复: 字节=32 时间=42ms TTL=49
来自 220.181.38.148 的回复: 字节=32 时间=41ms TTL=49
来自 220.181.38.148 的回复: 字节=32 时间=41ms TTL=49

220.181.38.148 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 41ms,最长 = 42ms,平均 = 41ms

4. 域名

域名就是一个好记的字符串,例如qq.com

域名之间的关系:

  1. com 顶级域名
  2. baidu.com 二级域名(俗称一级域名)
  3. www.baidu.com 三级域名(俗称耳机域名)

所以xxx.com和www.xxx.com可能并不是同一个网站!!!