URL
url = 协议 + 域名 + 路径 + 查询参数 + 锚点
DNS
域名系统
作用
把域名和IP联系起来
输入一个域名会发生什么
浏览器问电信的DNS服务器,域名对应的IP
电信会回答一个IP
浏览器再向对应IP的80/443端口发送请求
请求内容是域名的首页
114.114.114.114
114.114.115.115
域名+路径 可以访问不同的页面
域名+查询参数 可以访问同一页面不同内容
IP
Internet Protocol
IP分为内网和外网(公网)
如何获得外网IP
查询网站:https://ip138.com/
首先在电信租用宽带
然后用光猫把光信号转换为电信号
还要一个路由器,用手机、电脑连接WIFI
路由器连上电信的服务器会有一个外网IP
但如果你的路由器重启了外网IP可能会变
手机、电脑获得的是路由器分配的内网IP
路由器也称为网关
几个特殊的IP
127.0.0.1 表示自己
localhost 通过hosts 指定为自己
0.0.0.0 不表示任何设备
端口
为提供特定的服务开放的窗口
HTTP服务默认80端口
HTTPS服务默认443端口
FTP默认21端口
一共有65535个端口
端口查询:维基百科
规则
0到1023号端口是留给系统使用的,要用需要管理权限,其他端口可以随便使用
http-sever默认使用8080端口
如果一个端口已经被占用,就不能再用了
域名是什么
域名是IP的别称
baidu.com 对应什么IP
ping baidu.com 可以看到
nslookup baidu.com也可以(通过DNS服务器)
qq.com 也一样
域名分类
顶级域名 com、cn
二级域名 github baidu
三级域名 www
知识点
一个域名可以对应不同IP
这叫负载均衡,防止一台机器扛不住
一个IP可以对应不同域名
这叫共享主机,穷开发者会这样做
curl 命令
用curl可以发HTTP请求
curl -v http://baidu.com
curl -s -v -- https://www.baidu.com
理解一下概念
url会被curl工具重写,先请求DNS获得IP
先进行TCP连接,TCP连接成功后,开始发送HTTP请求
请求内容、响应内容
响应结束后,关闭TCP连接后,真正结束
HTTP
规定请求的格式是什么、响应的格式是什么