阅读 81

浅析 URL

统一资源定位符(Uniform Resource Locator),是一个给定的独特资源在 web 上的地址,俗称网址。 URL 的组成如下:

[协议类型]://[域名或IP]:[端口号]/[路径]?[查询字符串]#[锚点]
复制代码

协议

主要有 HTTP 协议和 HTTPS 协议。

域名 / IP

IP

IP 地址代表了一个互联网上的独特位置,每个上网的设备都有自己独立的 IP 地址。

IP 分为外网 IP 和内网 IP,它约定了如何定位一台设备;如何封装设备报文,以跟其他设备交流。

几个特殊的 IP:

  1. 127.0.0.1 表示自己
  2. localhosts 通过 hosts 指定为自己
  3. 0.0.0.0 不表示任何设备

域名

域名是对 IP 的别称。

注意:www.baidu.combaidu.com 不是一个域名。

  • 一个域名可以对应多个 IP,称为负载均衡。这是为了防止一台机器无法同时为大量用户提供服务。
    比如不同地区 ping baidu.com 就会得到不同的 IP 地址。
  • 一个IP也可以对应多个域名,称为主机共享。

可以使用 nslookup 查看

image.png

也可以使用 ping 命令来查看某个域名的 IP 地址

image.png

ping 出来是本地区的服务器的地址,主要用来测试本机于服务器的联通性;而 nslookup 是能看到所有的地址。

DNS

全称 Domain Name System,它的作用是把域名和 IP 对应起来。

DNS 请求的工作流程:

  1. 在浏览器地址栏输入域名。
  2. 浏览器询问本机是否识别到此域名的 IP 地址(本地 DNS 缓存)。是的话,域名转换为 IP 地址,然后浏览器于服务器交换内容,结束。
  3. 如果本地 DNS 缓存中没有此域名对应的 IP 地址,它会询问一个 DNS 服务器(这个服务器的工作就是告诉电脑已注册域名对应的 IP 地址),然后浏览器和网络服务器交换内容,结束。

端口

一台机器通过不同的端口来提供不同的服务。如 80 端口提供 HTTP 服务,443 端口提供 HTTPS 服务,21 端口提供 FTP 服务(文件传输协议)。

  1. 一共有 65535 个端口。
  2. 0 到 1023 端口是给系统使用的,拥有管理员权限之后,才能使用这 1024 个端口。
  3. 其他端口给普通用户使用,如 http-server 默认使用 8080 端口。一个端口如果杯占用,就只能换一个端口。

IP 地址提供定位,端口提供服务,两者缺一不可。

路径 & 查询参数 & 锚点

使用不同路径可以请求不同的页面。

developer.mozilla.org/zh-CN/docs/… developer.mozilla.org/zh-CN/docs/…

使用不同的查询参数可以在同一页面得到不同的内容。

www.google.com/search?q=hi www.google.com/search?q=你好

使用锚点可以定位同一页面的不同位置。

developer.mozilla.org/zh-CN/docs/…

注意:

  1. 锚点看上去有中文,但实际不支持中文,会把中文进行编码。
  2. 锚点是无法再 Network 面板看到的,因为锚点不会传给服务器,所以不要拿锚点传参数。
文章分类
前端
文章标签