http协议
Crownt
bug
展开
-
http协议_缓存cache机制
使用缓存的原因缓解服务器压力; 降低客户端获取资源的延迟:缓存通常位于内存中,读取缓存的速度更快。并且缓存在地理位置上也有可能比源服务器来得近,例如浏览器缓存。缓存实现方法让代理服务器进行缓存; 让客户端浏览器进行缓存。缓存设置http协议中,可以通过响应报文的"Cache-Control" 首部字段来控制缓存,如:Cache-Control : public, max-...原创 2019-01-23 20:36:38 · 510 阅读 · 0 评论 -
http协议_HTTPs的实现
HTTP 的安全性问题使用明文进行通信,内容可能会被窃听; 不验证通信方的身份,通信方的身份有可能遭遇伪装; 无法证明报文的完整性,报文有可能遭篡改。 HTTPsHTTPs 并不是新协议,而是让 HTTP 先和 SSL(Secure Sockets Layer)通信,再由 SSL 和 TCP 通信,也就是说 HTTPs 使用了隧道进行通信。通过使用 SSL,HTTPs 具有了...原创 2019-01-26 20:37:25 · 211 阅读 · 0 评论 -
http协议_代理服务(proxy)
一.代理服务器代理服务器接受客户端的请求,并且转发给其它服务器。使用代理的主要目的是:缓存 负载均衡 网络访问控制 访问日志记录代理服务器分为 正向代理(forward proxy) 和 反向代理两种(Reverse Proxy):用户察觉得到正向代理的存在。 而反向代理一般位于内部网络中,用户察觉不到。 正向代理和反向代理的区别位置不同 正向代...转载 2019-01-25 21:45:39 · 5380 阅读 · 0 评论 -
http协议_CSP(Content-Security-Policy 内容安全策略)
http协议中的内容安全策略是为了让网站更加安全.内容安全策略(Content Security Policy)是一种声明的安全机制,可以让网站运营者能够控制遵循CSP的用户代理(通常是浏览器)的行为。通过控制要启用哪些功能,以及从哪里下载内容,可以减少网站的攻击面。CSP的主要目的是防御跨站点脚本(cross-ste scripting,XSS)攻击。例如,CSP可以完全禁止内联的Jav...转载 2019-01-25 21:10:00 · 4813 阅读 · 0 评论 -
http协议_redirect
Redirect的实现将response的状态码设为302 通过头部的"Location"指定重定向的路径 注:302是临时跳转 301是永久跳转,即每次访问都会跳转302每次访问时都会先到达原路径,然后经过一次跳转后达到新的路径301只有第一次访问时,会有一个有原路径跳转新路径的过程,之后在访问原路径是,就会直接到达新路径,而不再经过原路径跳转的过程但301的使用要...原创 2019-01-25 20:55:13 · 1151 阅读 · 0 评论 -
http协议_长连接和短连接
TCP连接通过http协议进行数据传输的前提是建立TCP连接,一个TCP连接的建立需要三次握手过程,在一个TCP连接上可以进行客户端与服务器之间的http通信.在http/1.x的版本中,一个TCP连接中的http通信是有顺序的,只有前一个http通信完成后,后面的http通信才可以接着进行,故在一个服务中要实现多个http通信的并行过程,则需要多个TCP连接http/2.0版本中,在...转载 2019-01-25 20:52:15 · 1059 阅读 · 0 评论 -
http协议_Cookie和Session
CookieHTTP 协议是无状态的,为了让 HTTP 协议尽可能简单,使得它能够处理大量事务,HTTP/1.1 引入 Cookie 来保存状态信息。Cookie 是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器之后向同一服务器再次发起请求时被携带上,用于告知服务端两个请求是否来自同一浏览器。由于之后每次请求都会需要携带 Cookie 数据,因此会带来额外的性能开销(尤其是在...转载 2019-01-25 20:45:18 · 227 阅读 · 0 评论 -
http协议_传输控制
内容编码内容编码将实体主体进行压缩,从而减少传输的数据量。常用的内容编码有:gzip、compress、deflate、identity。浏览器发送 Accept-Encoding 首部,其中包含有它所支持的压缩算法,以及各自的优先级。服务器则从中选择一种,使用该算法对响应的消息主体进行压缩,并且发送 Content-Encoding 首部来告知浏览器它选择了哪一种算法。由于该内容协商...转载 2019-01-25 20:15:23 · 519 阅读 · 0 评论 -
http协议_数据协商
http协议中,可以通过内容协商返回最合适的内容,例如根据浏览器的默认语言选择返回中文界面还是英文界面。在客户端发送给服务端一个请求的时候,客户端可以声明该请求所期望获得的数据格式和数据相关的一些属性,服务端会根据客户端声明的请求做出判断并给出相应的结果实现方式一:客户端设置特定的 HTTP 首部字段,例如 Accept、Accept-Charset、Accept-Encoding、A...原创 2019-01-25 19:53:25 · 249 阅读 · 0 评论 -
http协议_方法
HTTP方法http协议中,客户端发送的请求报文的第一行为请求行,包含了方法字段。GET获取资源当前网络请求中,绝大部分使用的是 GET 方法。HEAD获取报文首部和 GET 方法类似,但是不返回报文实体主体部分。主要用于确认 URL 的有效性以及资源更新的日期时间等。POST传输实体主体POST 主要用来传输数据,而 GET 主要用来获取资...转载 2019-01-25 17:10:36 · 326 阅读 · 0 评论 -
http协议_状态码
在http协议中,服务器返回的响应报文的中第一行为状态行,其中包含htttp协议的版本号,状态码以及原因短语,以用来告知客户端请求的结果。HTTP状态码被分成了五大类状态码 类别 含义 1XX Informational(信息性状态码) 接收的请求正在处理 2XX Success(成功状态码) 请求正常处理完毕 3XX Redirect...转载 2019-01-25 16:45:37 · 169 阅读 · 0 评论 -
http协议_URI、URL、URN
URI (Uniform Resource Identifier)统一资源标志符,用来唯一标识互联网上的信息资源,包括URL和URN URL (Uniform Resource Locator)统一资源定位器格式:协议://用户名@密码:子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标识如:http://user:pass@host.com:80/pat...原创 2019-01-20 23:46:52 · 200 阅读 · 0 评论 -
http协议_http的成长
HTTP/0.9只有一个GET命令 没有HEADER等描述数据的信息 服务器发送完毕,就关闭TCP连接 (一个TCP连接中可以包含多个HTTP请求) HTTP/1.0增加了很多命令 (POST, DELETE 等) 增加了status code 和 header 多字符集支持、多部分发送、权限、缓存等HTTP/1.1支持pipeline (流水线) 增加host (...原创 2019-01-20 22:52:23 · 232 阅读 · 0 评论 -
http协议_报文格式
请求报文请求报文主要分为三部分,请求首行(request line), 请求头部(request header), 请求体(request body). 请求行与请求头部通过一个换行隔开,请求头部和请求体之间通过一个空行隔开.请求首行请求行由"请求方法"、"URL"和"HTTP协议版本"3个字段组成,之字段间用空格分隔. 响应报文响应报文同样主要分为三部分,响应首行(r...原创 2019-01-25 15:35:55 · 973 阅读 · 0 评论 -
http协议_跨域问题
浏览器的同源策略及跨域请求具有相同协议,域名和端口的页面,则具有相同的源,即它们是来自同一个服务的资源.如,对"http://store.company.com/dir/page.html" 进行同源检测: URL 结果 原因 http://store.company.com/dir2/other.html 成功 http:/...原创 2019-01-23 10:39:59 · 2098 阅读 · 0 评论