共计 1399 个字符,预计需要花费 4 分钟才能阅读完成。
浅析 URL
URL 概览
- URL:Uniform Resource Locator 的缩写。译为“统一资源定位符”
- URL 的组成:协议 + 域名 + 端口 + 路径 + 查询参数 + 锚点
URL 举例:https://www.baidu.com/s?wd=he…
- 协议:https
- 域名:www.baidu.com
- 路径 /s:
- 查询参数:wd=hello&rsv_spt=1
- 锚点:#5(不在 network 中显示,只和本地有关)
- 端口:443(默认)
IP
- Internet protocol:网络协议
李爵士发明的三样东西:
- www(万维网):URL+HTTP+HTML
IP 的两个作用
- 定位一台设备
- 定义了如何封装数据,以及和其他设备交流
(一)外网 IP
- 路由器连上电信的服务器,那么路由器就会有一个外网 IP;
- 如果重启路由器,就有可能被分配到一个新的 IP:也就是说没有固定的外网 IP
(二)内网 IP
- 路由器会创建一个内网,并给自己分配一个好记的域名,一般是 192.168.1.1
- 路由器会给每个连接路由器的设备分配一个 IP
(三)路由器的功能:
- 内网中的设备可以互相访问,但不能直接访问外网。想要访问外网就必须通过路由器
- 外网中的设备也可以互相访问,但不能直接访问内网,想要把内容送到内网,也需要通过路由器
- 内网和外网是两个独立的空间,无法互通,唯一的联通点就是路由器
- 路由器有时候也被叫做网关
(四)几个特殊的 IP
- 127.0.0.1 表示自己
- localhost 表示 hosts 指定为自己
- 0.0.0.0 不表示任何设备
端口
- 一台机器可以提供很多服务:每个服务一个号码,这个号码叫做端口号 port
一台机器可以提供不同的服务:
- HTTP 服务:使用 80 端口
- HTTPS 服务:使用 443 端口
- FTP 服务:使用 21 端口
- 一共 65535 个端口
端口使用的规则
- 0 到 1023 号端口是留给系统用的
- 你只有拥有了管理员 权限后,才能使用 1024 个系统端口,其他端口可以给用户使用
- 比如 http-server 默认使用 8080 端口
- 一个端口如果被占用,那么只能使用另一个端口
tips:端口和 IP 缺一不可
域名
- 域名就是 IP 的别称
记忆点:
(1)一个域名可以对应不同 IP(均衡负载)
(2)一个 IP 可以对应不同域名(共享主机)
(3)均衡负载:防止一台机器扛不住
(4)共享主机:穷开发者会这么做,公用一个主机
域名和 IP 是如何对应起来的?——DNS
- DNS(Domain Name System,域名系统 / 域名服务)
当输入 baidu.com 并点击回车:
- 你的浏览器向电信 / 联通提供的 DNS 服务器询问 www.baidu.com 对应什么 IP
- 电信 / 联通会回答一个 IP
- 浏览器向对应的 443/80 端口发送请求
- 请求内容为 baidu.com 的首页
为什么是 80、443 端口?
- 服务器默认用 80 端口提供 http 服务
- 服务器默认用 443 端口提供 https 服务
- 可以在开发者工具中看到具体的端口(network)
域名等级和 www
com 是顶级域名
baidu.com 是二级域名
www.baidu.com 是三级域名
- www 多余吗?非常多余
- 理论上讲 xxx.com 和 www.xxx.com 可以对应不同的公司
如何查看域名对应的 IP 地址?
在命令行中输入 ping xxx
即可得到 xxx 域名对应的 IP 地址了
在命令行中输入 nslookup xxx
就可以看到 xxx 域名对应的所有地址了
http 相关概念
- HTTP 全称:HyperText Transfer Protocol
- HTTP 作用:规定请求的格式和响应的格式
正文完