《浅析 URL》

169 阅读4分钟

URL(统一资源定位符)

URL 统一资源定位符(Uniform Resource Locator)。 URL 无非就是一个给定的独特资源在 Web 上的地址。理论上说,每个有效的 URL 都指向一个唯一的资源。这个资源可以是一个 HTML 页面,一个 CSS 文档,一幅图像,等等。

URL 组成

协议 + 域名或IP + 端口号 + 路径 + 查询参数/字符串 + 锚点

如下例:

http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#hi

http协议。它表明了浏览器必须使用何种协议。它通常都是HTTP协议或是HTTP协议的安全版,即HTTPS。

www.example.com域名。 它表明正在请求哪个Web服务器。

:80端口。 它表示用于访问Web服务器上的资源的技术“门”。

/path/to/myfile.html 是网络服务器上资源的 路径

?key1=value1&key2=value2 是提供给网络服务器的额外 查询参数。 这些参数是用 & 符号分隔的键/值对列表。

#hi 是资源本身的另一部分的 锚点

IP

IP 用于定位一个设备,分为外网 IP内网 IP ,但是两者不能直接访问,只能通过路由器(网关)进行联系。

外网IP

比如你从电信办理了一个宽带,然后用路由器连上电信的服务器,那么路由器就会有一个外网 IP,比如12.17.32.211就是一个外网 IP,如果重启路由器,就可能会重新分配一个外网 IP,所以路由器没有固定的外网 IP。

内网IP

路由器会在你家里创建一个内网,内网中的设备用内网 IP,路由的内网 IP,一般是 192.168.1.1,然后路由会给每一个内网里面的设备都分配不同的内网 IP。

几个特殊的IP

  • 127.0.0.1 表示自己
  • loaclhost 为通过Host指向自己
  • 0.0.0.0 不表示任何设备

域名

域名为互联网上任何可用的网页服务器提供了方便人们理解的地址。
例如,我们平时看到的 baidu.com 就是 域名, 也是 IP 的别称。

ping 命令

1.根据域名得到服务器 IP;
2.来检查路由是否能够到达。用来检测网络的连通情况和分析网络速度;
3.根据 ping 返回的 TTL值 来判断对方所使用的操作系统及数据包经过路由器数量。

输入命令 ping baidu.com ,可以看到 baidu.com 的 IP 用 mac ping 了以后,就不会停,ctrl + c 停下。

域名分类

.com 商业性的机构或公司
.cn 中国域名
.top 机构公司个人
.tech科技、技术
.org 非盈利的组织、团体
.gov 政府部门
.mtl 军事部门
.edu 教育或研究机构

一个 IP 可以对应不同的 域名,这个叫 共享主机,穷的开发者就会这样做。

一个 域名 可以对应不同的 IP,这个叫做 均衡负载,防止一台机器扛不住。

端口

一台机器可以提供不同服务

  • HTTP 服务最好80端口
  • HTTPS 服务最好443端口
  • FTP 服务最好21端口
  • 一共65535个端口

HTTP 协议默认端口是 80,HTTPS 默认端口是 443,在使用这两协议时,可以不用显示指定端口,浏览器会默认加上端口。

DNS(域名系统)

DNS 域名系统(Domain Name System)。通过 DNS 可以将 域名 和 IP 对应起来。让用户在访问网站时,不需要输入难记的 IP 地址,只需输入域名即可访问,因为 DNS 会自动将域名转换成正确的IP地址

DNS请求如何工作?

  1. 在你的浏览器地址栏输入 baidu.com。
  2. 您的浏览器询问您的计算机是否已经识别此 域名 所确定的 IP 地址(使用本地DNS缓存)。 如果是的话,这个域名被转换为 IP 地址,然后浏览器与网络服务器交换内容。
  3. 如果你的电脑不知道 baidu.com 域名背后的 IP, 它会询问一个 DNS 服务器, 这个服务器的工作就是告诉你的电脑已经注册的域名所匹配的 IP。
  4. 现在电脑知道了要请求的 IP 地址,你的浏览器能够与网络服务器交换内容。

nslookup 命令

nslookup命令用于查询 DNS 记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。

上面是本机 IP,下面是baidu.com域名对应的IP。