@想一想@:为什么输入网址就能够访问网页?
不是在任何地方(记事本)输入网址都能访问网页的,一般来说,我们只能通过浏览器(browser)打开网站。常见的浏览器包括:
浏览器曾经被认为是互联网的入口,众多厂商一度杀得天昏地暗,详见:浏览器大战。
当我们让浏览器打开一个网页的时候,浏览器首先会解析网址。比如:
https://17bang.ren/Article/Category-1?size=50&sort=Asc
就会被解析成:
其实,这里面还隐藏了一个端口(port),看这个网址:
http://localhost:58545/Register
localhost也算是一个域名(地址),冒号后面跟的就是端口:58545,默认的
即,https://17bang.ren 和 https://17bang.ren:443是一样的。
演示:https://17bang.ren:443 OK,https://17bang.ren:443 不行。
网址又被称之为URI(Uniform Resource Identifier),统一资源标识符
但日常用语中更多的被称之为URL(Uniform Resource Locator),统一资源定位符。
究竟哪一种更规范,呵呵,这个有得扯:有兴趣的同学随便看看
以小数点(.)为分割,从后往前倒着数,依次是一级/二级/三级……域名,比如:
域名需要(花钱)申请,我们一般能申请的,是二级域名,比如17bang.ren。
PS:憋问为什么不是17bang.com,o(╥﹏╥)o
二级以上的,我们可以自己是设置,比如:sample.17bang.ren,飞哥自己配的。
Domain Name System,域名系统,负责域名的解析:把英文字母(甚至中文)组成域名解析成数字格式(本质二进制,表示十进制)的IP地址。
cmd演示:nslookup 17bang.ren
C:\Users\86186>nslookup 17bang.ren
服务器: 192.168.1.1
Address: 192.168.1.1
非权威应答:
名称: 17bang.ren
Address: 121.4.222.169
但域名和IP地址不是一一对应关系,一个IP地址可以挂多个域名。
一个特殊的域名:localhost,对应127.0.0.1,即当前电脑。
注意上文中有“非权威应答”,啥意思呀?
同学们应该能够想象得到:域名和IP地址之间,应该有一张映射表。但
因为域名是分级的,所以它天然是一个由根域名向下分叉的树状结构(复习),所以这个映射表理论上是分节点分级存储的,查找时也一样,从根域名开始,逐级查找。
但为什么说是“理论上”,因为实际上,这张映射表整个互联网到处都是……
这个映射表是允许/鼓励复制的:
@想一想@:为什么要这么做?
PS:到目前为止,全世界一共有13个IPv4根域名服务器(1主12辅),没有一个在中国……2019年6月,中国工信部同意中国互联网络信息中心设立域名(镜像)根服务器及域名根服务器运行机构。我国是希望在IPv6上能够弯道超车(雪人计划)……
port,这里专指TCP/IP协议中用数字表示的逻辑端口。
我们可以把服务器想象成一个多功能办事大厅,端口就是服务窗口,办不同的事,就要去不同的窗口。
服务器也是一样,不同的通信请求,就要走不同的端口。
服务器可以打开(监听listen)端口,和其他设备进行通信;也可以关闭端口,保护自身安全。(防火墙常规操作)
端口分三类:
演示:查看端口被谁占用:
最开始的时候,所有的网页就是服务器上一个一个真实存在的(HTML)文件。
这些文件按目录组织,文件的路径就是网址里面的路径,只是windows里面的反斜杠变成了正斜杠。
最简单的理解,我们在浏览器中输入某个网址,回车,实际上就是通过浏览器:
更具体的HTTP协议和URL参数我们下章再讲。
浏览器F12演示:网络 - 请求/响应
多快好省!前端后端,线上线下,名师精讲
更多了解 加: