2525 * [ 实体首部字段] ( #实体首部字段 )
2626* [ 五、具体应用] ( #五具体应用 )
2727 * [ Cookie] ( #cookie )
28- * [ 6. Secure] ( #6-secure )
2928 * [ 缓存] ( #缓存 )
3029 * [ 连接管理] ( #连接管理 )
3130 * [ 内容协商] ( #内容协商 )
4039 * [ 认证] ( #认证 )
4140 * [ 完整性保护] ( #完整性保护 )
4241 * [ HTTPs 的缺点] ( #https-的缺点 )
43- * [ 配置 HTTPs] ( #配置-https )
4442* [ 七、HTTP/2.0] ( #七http20 )
4543 * [ HTTP/1.x 缺陷] ( #http1x-缺陷 )
4644 * [ 二进制分帧层] ( #二进制分帧层 )
@@ -369,19 +367,19 @@ document.cookie = "tasty_cookie=strawberry";
369367console.log(document.cookie);
370368```
371369
372- ### 6. HttpOnly
370+ ### 6. HttpOnly
373371
374372标记为 HttpOnly 的 Cookie 不能被 JavaScript 脚本调用。跨站脚本攻击 (XSS) 常常使用 JavaScript 的 ` Document.cookie ` API 窃取用户的 Cookie 信息,因此使用 HttpOnly 标记可以在一定程度上避免 XSS 攻击。
375373
376374``` html
377375Set-Cookie: id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT; Secure; HttpOnly
378376```
379377
380- ## 6 . Secure
378+ ### 7 . Secure
381379
382380标记为 Secure 的 Cookie 只能通过被 HTTPS 协议加密过的请求发送给服务端。但即便设置了 Secure 标记,敏感信息也不应该通过 Cookie 传输,因为 Cookie 有其固有的不安全性,Secure 标记也无法提供确实的安全保障。
383381
384- ### 7 . Session
382+ ### 8 . Session
385383
386384除了可以将用户信息通过 Cookie 存储在用户浏览器中,也可以利用 Session 存储在服务器端,存储在服务器端的信息更加安全。
387385
@@ -396,11 +394,11 @@ Session 可以存储在服务器上的文件、数据库或者内存中。也可
396394
397395应该注意 Session ID 的安全性问题,不能让它被恶意攻击者轻易获取,那么就不能产生一个容易被猜到的 Session ID 值。此外,还需要经常重新生成 Session ID。在对安全性要求极高的场景下,例如转账等操作,除了使用 Session 管理用户状态之外,还需要对用户进行重新验证,比如重新输入密码,或者使用短信验证码等方式。
398396
399- ### 8 . 浏览器禁用 Cookie
397+ ### 9 . 浏览器禁用 Cookie
400398
401399此时无法使用 Cookie 来保存用户信息,只能使用 Session。除此之外,不能再将 Session ID 存放到 Cookie 中,而是使用 URL 重写技术,将 Session ID 作为 URL 的参数进行传递。
402400
403- ### 9 . Cookie 与 Session 选择
401+ ### 10 . Cookie 与 Session 选择
404402
405403- Cookie 只能存储 ASCII 码字符串,而 Session 则可以存取任何类型的数据,因此在考虑数据复杂性时首选 Session;
406404- Cookie 存储在浏览器中,容易被恶意查看。如果非要将一些隐私数据存在 Cookie 中,可以将 Cookie 值进行加密,然后在服务器进行解密;
@@ -720,11 +718,6 @@ HTTPs 的报文摘要功能之所以安全,是因为它结合了加密和认
720718
721719- 因为需要进行加密解密等过程,因此速度会更慢;
722720- 需要支付证书授权的高额费用。
723-
724- ## 配置 HTTPs
725-
726- [ Nginx 配置 HTTPS 服务器] ( https://aotu.io/notes/2016/08/16/nginx-https/index.html )
727-
728721# 七、HTTP/2.0
729722
730723## HTTP/1.x 缺陷
@@ -849,7 +842,7 @@ DELETE /idX/delete HTTP/1.1 -> Returns 404
849842
850843# 九、HTTP/1.0 与 HTTP/1.1 的区别
851844
852- > 详细内容请见上文
845+ 详细内容请见上文
853846
854847- HTTP/1.1 默认是长连接
855848
0 commit comments