503 - 服务不可用
502 - 无效网关
500 - 服务器内部错误
404 - 文件未找到
403 - 禁止访问
401 - 未经授权
400 - 错误请求
Web服务器通过返回HTTP 400错误告诉访问者,访问者用来访问网站的程序出错,或访问请求途中遭到破坏。304 - 未修改
301 - 永久重定向(永久移动)
302 - 临时重定向(临时移动)
请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。```200 - 服务器成功返回网页
get/post请求方法的区别GET和POST是HTTP请求的两种基本方法。
GET把参数包含在URL中,是从服务器上获取数据,POST通过request body传递参数,是向服务器传送数据。
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
GET请求会被浏览器主动抓取(cache),而POST不会,除非手动设置。
GET请求只能进行url编码,而POST支持多种编码方式。
对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。
get安全性非常低,post安全性较高。
(PS:GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。)
http缓存机制是web性能优化的重要手段
打个比方,浏览器中存在一个缓存的数据库,用来存储缓存信息。
在客户端第一次请求数据时,此刻数据库中没有对应的数据,需要请求服务器,将数据存储至数据库中。
http缓存有多种规则,根据是否需要重新向服务器发起请求来分类,将其分为强制缓存,对比缓存
已存在缓存数据时——强制缓存(请求数据流程如下图)
已存在缓存数据时——对比缓存(请求数据流程如下图)
强制缓存如果生效,不需要再和服务器发生交互,而对比缓存不管是否生效,都需要与服务端发生交互。
两类缓存规则可以同时存在,强制缓存优先级高于对比缓存,也就是说,当执行强制缓存的规则时,如果缓存生效,直接使用缓存,不再执行对比缓存规则。
更通俗易懂的来说:强制缓存就是在你第一次登录某个网站时,服务器判断你是新用户,将当前网站内容缓存在电脑里,激动的白开水再次进入时,提取当时的缓存,将该网站快速呈现。
浏览器第一次请求:
浏览器再次请求时:
(参考地址:https://www.cnblogs.com/huhuxixi/p/10644829.html)
一、HTTP和HTTPS的基本概念HTTP:
HTTP是什么?HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。
是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性
HTTP协议传输的数据是明文未加密的,因此使用HTTP协议传输隐私信息非常不安全。
HTTPS和HTTP的区别主要如下:
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。