URL 是什么?
URL 代表着是统一资源定位符(Uniform Resource Locator),换句话说就是可以定位资源的的地址
URL 是由多个部分组成,其中一些是必须的,而另一些是可选的。
URL=协议(Protocol)+域名(Damain Name)+端口(Port)+路径(Path the file)+参数(Parameters)+锚点(Anchor)
看个例子🌰
URL=http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#TheDocument
- 协议(Protocol) = http
- 域名(Damain Name) = www.example.com
- 端口(Port) = :80
- 路径(Path thr file) = /path/to/myfile.html
- 参数(Parameters) = key1=value1&key2=value2
- 锚点(Anchor) = #TheDocument
解释:
- http 是协议的一种,协议还包括 https、mailto:(打开邮件客户端)或者 ftp:(处理文件传输)
- www.example.com 表示正在请求 www.example.com 的Web服务器,也可以使用IP地址(192.168.12.123(这个举例子的IP)),但IP地址不太容易记住,所以就产生了域名。
- 端口表示用于访问 Web 服务器上的资源的技术“门”。如果 Web 服务器使用 HTTP 协议的标准端口(HTTP 为80,HTTPS 为443)来授予其资源的访问权限,则通常会被忽略。否则是强制性的。
- /path/to/myfile.html 表示网络服务器上资源的路径,也就是 path 文件夹下的 to 文件夹, to 文件夹下的 myfile.html 文件
- ?key1=value1&key2=value2 是提供给网络服务器的额外参数。这些参数是用 & 符号分隔的键/值对列表。在返回资源之前,Web 服务器可以使用这些参数来执行额外的操作。每个 Web 服务器都有自己关于参数的规则,唯一可靠的方式来知道特定 Web 服务器是否处理参数是通过询问Web服务器所有者。
- #TheDocument 这是写给浏览器的锚点,没有发送到请求的服务器。锚点只是看起来支持中文!!
IP(Internet Protocol) 地址
IP 地址是分配给连接到使用 Internet 协议的网络的每个设备的一串数字。 知道 IP 就可以 Web 服务器的位置,那么知道域名又是怎么知道 Web 服务器的地址的呢?
这就需要用到 DNS(Domain Name System) 域名系统(下文有写是什么)
几个特殊的IP
- 127.0.0.1 表示自己
- localhost 通过 host 表示自己
- 0.0.0.0 不代表任何设备
ping命令的使用
ping 可以检测目标地址是否于当前设备通讯正常,特别是用于局域网。
举2个例子🌰🌰
- ping baidu.com
- ping 192.168.1.1(我家路由器的地址)
延迟(往返行程的估算时间)明显低于 baidu.com,因为属性局域网访问
更多的ping的使用方法 ping /?
DNS(Domain Name System) 域名系统
DNS (Domain Name System) 域名系统,是一个层次化、分散化的 Internet 连接资源命名系统。DNS维护着一个包含域名与对应资源例如IP地址的列表.
DNS 最突出的功能是将易于记忆的域名(例如 mozilla.org)翻译成为数字化的 IP 地址(例如151,106,5,172).这一从域名到 IP 地址的映射过程被称为 DNS 查询(DNS lookup),与之对应,DNS 反向查询(rDNS)用来找到与 IP 地址对应的域名.
小提示:一个域名可以对应多个 IP,防止单个服务器顶不住压力,让外人看不懂的说法就是均衡负载。一个 IP 也可以对应多个域名,让外人看不懂的说法就是共享主机(是不是因为穷?🧐)。
nslookup(DNS lookup) 命令的使用
\
更多的 nslookup 的使用方法 nslookup /?
域名
域名就是 IP 地址的别称
baidu.com的 IP 地址就是 220.181.38.148和 39.156.69.79
反之这两的IP地址的域名就是 baidu.com·
域名的关系
com 是顶级域名 xxx.com 是二级域名 (俗称一级) www.xxx.com 是三级级域名 (俗称二级)
www.xxx.com 和 xxx.com 不是有一个域名,那为什么 www.baidu.com 和 baidu.com 均可以进入百度首页,因为百度进行了对应的操作,当输入的为 baidu.com 时,百度服务器接受到请求,然后重定向到 www.baidu.com
www 并没有实际的作用,部分浏览器在地址栏已经取消了www 的显示