HTTP入门部分-URL(统一资源定位服务)
介绍
protocol
- 协议、礼节、约定
李爵士发明的三个东西
- WWW = URL+HTTP+HTML
IP
IP是什么
-
约定如何定位一台设备
-
约定如何封装数据报文(这个先不管)
外网IP
-
路由器连接到运营商的服务器,路由器就有一个外网IP
-
路由器的IP不是固定的,每次重启有可能就会变
-
可以通过查询外网ip网站查询自己的外网IP
内网IP
-
路由器会创建一个内网
-
路由器会给自己分配一个好记的内网IP(如192.168.1.1)
-
然后会给每个内网设备分配不同的内网IP
-
内网设备使用分配到的内网IP(如192.168.xxx.xxx)
路由器功能
-
路由器有两个IP,一个内网IP,一个外网IP
-
内网设备可以相互访问,但不能直接访问外网
-
内网设备要访问外网,必须有路由器做中转才行
-
外网可以直接访问外网,但不能访问内网,也需要路由器做中转才行
-
所以路由器有时候也被叫做网关
特殊的IP(需要记住)
-
127.0.0.1 表示自己
-
localhost 通过hosts文件配置 指定为自己,这个文件在C/windows/system32/drivers内,可以自己修改
-
0.0.0.0 不表示任何设备(暂时还没有学到这里)
端口
端口 port
- 一台机器可以提供不同服务
-
要提供HTTP服务,通常是80端口
-
要提供HTTPS服务,通常是443端口
-
要提供FTP服务,通常是21端口
-
一共有65535个端口,基本是够用的
- 如果忘记了什么端口是什么服务可以搜TCP端口,维基百科说得很清楚
端口使用规则
-
0~1023(2的10次方减一)号端口是留给系统使用的
-
要拥有了管理员权限后,才能使用这上面的端口(但不推荐这么做)
-
其他端口可以给普通用户使用
-
例如:http-server 默认使用8080端口
-
一个端口被占用就只能换一个使用
- 可以更改端口
- http-server -p 端口号
- 总结
IP和端口缺一不可
域名
域名是什么
- 对IP的别称
可以在控制台ping一个网站得到IP
知识点
-
一个域名可以绑定多个IP,服务器均衡
-
一个IP也可以绑定多个域名,这叫共享主机,一般穷的开发者会这么做(比如我)
-
域名和IP是通过DNS查询到的
输入网页后的过程
-
浏览器会向运营商提供的DNS 询问其对应的IP
-
运营商回答一个IP,然后浏览器向对应IP的 80/443 端口发送请求
-
为什么是80和443端口,因为80对应的是http,443对应的https
-
开发者工具的网络那一栏可以看到具体的端口
- nslookup命令+域名可以查询到域名对应的多个IP
查阅参数和锚点
如何请求同一个网站的不同页面
- 路径
在域名上写不同路径就能访问同一网站的不同页面
- 工具
开发者工具可以查看请求是哪个路径
如何请求同一个页面的不同内容
- 查阅参数
例如:
-
baidu.com/s?wd=hi
-
baidu.com/s?wd=hello
就能分别查看到hi的搜索内容和hello的搜索内容
如何请求同一个内容的不同位置
-
锚点可以做到这个操作
-
在域名的最后加上#和锚点名称
- 注意
-
锚点看起来是有中文的,实际上是不支持中文的
-
#后面如果是中文最后会变成一串字符串
-
锚点无法在开发者工具中网络面板看到
-
因为锚点不会传给服务器,就是#后面的内容(包括#)最终不会传给服务器
URL举例
就算没有写出来也要在心里知道HTTPS的端口是443
curl命令
介绍
概念
-
URL会被CURL工具重写,先请求DNS获得IP
-
先进性TCP链接,TCP连接后,开始发送HTTP请求
-
请求的内容需要看一下
-
响应的内容也需要看一下
-
响应结束后,关闭TCP连接(在控制台看不出来)
-
真正结束
- 补充图片方便知道是啥意思