一、URL组成
URL(Uniform Resource Locator)——统一资源定位符。以
www.baidu.com/s?wd=hello&… 为例。
URL:协议 + 域名/IP + 端口号 + 路径 + 查询字符串 + 锚点
1. 协议
- TCP:传输控制协议(Transfer Control Protocal)
- HTTP:超文本传输协议
- HTTPS:是以安全为目标的 HTTP 通道,是 HTTP 的安全版
- FTP:文件传输协议
2.IP
现在路由器有两个IP,分别是外网IP和内网IP,内网和外网像是隔绝的两个空间,唯一的联通点是路由器,所以有时候也称路由器是网关。
特殊的IP
- 127.0.0.1表示自己
- 0.0.0.0不表示任何设备
- 更改自己的IP:用管理员身份打开编辑器,再打开hosts文件进行编辑即可。例如:127.0.0.1.xxx (hosts位置:C:\Windows\System32\drivers\etc\hosts)
3.端口
(1)端口使用规则:
-
0~1023 端口是留给系统的,拥有管理员权限才能使用。
-
其他端口可以给普通用户使用,可使用 http-server 命令行更换端口: 例如 hs -c-1 -p 1234 则将端口更换为了 1234 端口
-
一个端口被占用只能换一个端口 (2)默认
-
使用HTTP服务最好使用80端口
-
使用HTTPS服务最好使用443端口
-
使用FTP服务最好使用21端口 IP 和端口缺一不可
4. 域名
域名就是IP的别称。用 ping + 域名 即可看见该域名的IP地址,例如在 cmder里输入 ping qq.com 即可看见IP。
-
一个域名对应不同IP——均衡负载
-
一个IP也可以对应不同的域名 域名的分类:
-
.com是顶级域名
-
xiedaimale.com 是二级域名(俗称一级域名)
-
www.baidu.com 是三级域名(俗称二级域名)
DNS——域名和IP的对应
当向浏览器输入网址时,例如 qq.com ,浏览器会向电信/联通提供的DNS服务器询问该域名对应的IP,之后电信/联通会回答一个IP,然后浏览器再向对应IP的80/443端口发送请求,查看页面。
DNS是域名和IP的翻译器。
nslookup——查看域名对应的IP
用法:nslookup 域名
例如:nslookup baidu.com
5. 路径
路径可以请求不同的页面。例如 www.baidu.com/s?wd=hello&… 中 /s 即为路径,不同的页面有不同的路径。
6.查询参数
查询参数可以在同一个页面有不同的内容。例如 www.baidu.com/s?wd=hello 和 www.baidu.com/s?wd=hi 都是在搜索页面,但是内容不同 ?wd=hi 即为查询参数。
7.锚点
同一个内容不同位置——锚点。
- 锚点看着有中文,实际不支持中文。
- 锚点不会传给服务器,无法在 Network 面板看到。
二、curl 命令
curl 命令可以发HTTP请求,使用:curl -v 网址,例如 curl -v baidu.com
-
url会被 curl重写,先请求 DNS 获得 IP。
-
先进行 TCP(传输控制协议)连接,开始发送HTTP请求
-
请求内容:“ > ”号的内容。
-
响应内容:“ < ”号的内容即页面的内容。
-
响应结束,关闭 TCP 连接,结束。