HTTP全解 URL是什么
时间:2023-02-20 08:40:02 | 来源:建站知识
时间:2023-02-20 08:40:02 来源:建站知识
HTTP全解 URL是什么:
1、网络和IP
protocol(协议)
李爵士发明了三个东西 WWW=URL+HTTP+HTML
什么是ip(Internet Protocol
)主要约定了两件事:1、如何定位一台设备;2、如何封装数据报文,以跟其他设备交流
只要你在互联网中,你就有至少一个独特的ip
ip分内网和外网
如何获取外网IP?2、端口port
url用来定位一个服务器的。
一台机器可以提供很多服务,每个服务一个号码,这个号码就叫端口port
一台机器可以提供不同服务- 要提供HTTP服务最好使用80端口
- 要提供HTTPS服务最好使用443端口
- 要提供FTP服务最好使用21端口
- 一共65535个端口
怎么知道应该使用什么端口?维基百科有详细说明:
端口使用说明:
总结:ip用来定位一个设备,端口用来定位一个设备的服务,有了ip和端口,我们就可以定位一个设备提供的服务,例如:百度的设备提供的网页服务,腾讯设备提供的聊天服务等。
总而言之:IP和端口缺一不可3、域名、路径、查询参数、锚点
域名是什么?
域名就是对IP的别称
http://baidu.com、http://qq.com对应什么ip?去ping
http://baidu.com、ping
http://qq.combaidu.com对应的ipqq.com对应的ip一个域名可以对应不同的IP,这个叫做负载均衡,防止一台机器扛不住。 一个IP可以对应不同的域名,这个叫共享主机,穷开发者会这样做。(共用服务器)
域名和IP是怎么对应起来的?
通过DNS
DNS是如何运作的?
具体过程可以使用nslookup(域名寻找)如何看到具体的端口:
我们如何请求不同的页面呢?
路径可以做到
例如:https://developer.mozilla.org/zh-CN/docs/Web/HTML https://developer.mozilla.org/zh-CN/docs/Web/CSS访问第一个页面,我们只要改掉后面的路径就可以访问第二个页面。
同一个服务器上面,
使用不同的路径可以访问不同的页面 注意:路径是没有必要有后缀的
这两个页面的区别,可以在开发者工具上查看,除了路径不一样,可以查看到他们的get和其他信息都是一样的。
同一个页面,不同内容(eg:访问微博的时候同一个页面不同的内容) 这是
通过查询参数做到的
https://www.baidu.com/s?wd=hihttps://www.baidu.com/s?wd=hello这两个都是搜索页面,但是会出现不同的内容 s?wd= /* 查询参数,你要搜hi就写hi */
搜索页面,不同的内容,hihello内容同一个内容,不同位置 通过
锚点可以做到
https://developer.mozilla.org/zh-CN/docs/Web/CSS#教程https://developer.mozilla.org/zh-CN/docs/Web/CSS#相关链接会带我们到同一个页面,同一个内容中的不同位置
注意:
锚点看起来有中文,实际不支持中文,#教程会变成#%E6%95%99%E7%A8%8B,锚点是无法在Network面板看到的,因为锚点不会传给服务器。
URL 协议+域名或IP+端口号+路径+查询字符串+锚点
URL完整内容,这里没写端口,https默认端口是443HTTP(协议) 基于TCP和IP两个协议
4、crul命令
用crul命令可以发HTTP请求
测试:curl -v http://baidu.comcurl -s -v -- https://www.baidu.com
curl -v http://baidu.comcurl -v http://www.baidu.com- url会被curl工具重写,先请求DNS获得IP
- 先进行TCP连接,TCP连接成功后,开始发送HTTP请求
- 请求内容
- 响应内容
- 响应结束后,关闭TCP连接(看不出来)
- 真正结束
HTTP规定请求的格式是什么,响应的格式是什么