HTTP权威指南 笔记

HTTP权威指南

跳转至: 导航、 搜索
  1. 通用缓存头部:
    1. Cache-Control:
    2. Pragma
  2. 条件请求头部:
    1. Expect
    2. If-Match([ETag实体标记]相关)
    3. If-Modified-Since(服务器返回304时的特殊处理)
    4. If-None-Match([ETag实体标记]相关)
    5. If-Range(这个是不是相当于对文档资源的分布式环境下的共享读写访问?)
    6. If-Unmodified-Since(???)
    7. Range(用于下载软件的断点续传)
  3. HTTP Disk Cache应如何处理Cookie?
  4. HTTP Disk Cache应如何处理Proxy?
  5. 实体缓存头部:
    1. ETag
    2. Expires
    3. Last-Modified
  6. Meter头部?
    1. Connection: meter, close, bill-by-credit-card
    2. Meter: max-uses=3, max-refuses=6, dont-report
  7. p101 代理不应转发Connection: Keep-Alive首部(HTTP/1.0+)
    1. Proxy-Connection:对于不识别的盲代理,服务器会忽略之;否则代理应将其转换为Connection首部。
    2. 但如果盲代理的任意一侧存在一个聪明代理的话,问题再次出现(实际上,试图在多跳之间建立一个长连接总是会遇到类似问题的)
    3. HTTP/1.1的持久连接(默认),必须显示添加一个Connection: close。
  8. p140 反向代理:假装自己就是Web服务器(名字太费解了!)
  9. p142 匿名代理:删除IP信息、From、Referer、Cookie、Session、UA中的主机信息
  10. p150 PAC,WPAD(依赖于DNS)
  11. p152 代理URI(完整地址),或+ Host头部
  12. p156 有显示代理时,不对用户输入做扩展,如:http://abc/
  13. p158 Via
  14. p162 TRACE
  15. p174 缓存:命中、未命中、再验证
    1. 字节命中率(-_-)
    2. 再验证:若返回404则删除本地cache(!?)
    3. 区分响应是否来自Cache:Date头部、Age头部(只有原始服务器有权设置)
  16. p178 公共缓存(proxy cache)~ squid配置节省对图片资源的重复网络请求
  17. p180 动态缓存,cache mesh,内容路由 ICP/HTCP
  18. p181 缓存处理
    1. 接受客户端请求
    2. 解析
    3. 查询:是否有本地cache,否,就先获取一份副本(?对于浏览器本地disk cache不需要这么做)
      1. 可能更新Header:新的过期日
      2. 若验证不可,返回错误,
      3. 若不得已使用了旧cache,设置Warning(?)
      4. 新鲜度检测
      5. 创建响应(+Via?)(-Date!)
      6. Log(更新Cache命中统计信息)
  19. p185 ‘过期日’:HTTP/1.0+ Expires;及/1.1 max-age(单位:秒)——优先使用Cache-control
  20. p187 条件方法
    1. If-Match:用于并发控制(乐观锁?read->write)
    2. If-Unmodified-Since:用于部分传输
    3. If-Modified-Since(IMS):
    4. If-None-Match:""
      1. 注意:可以包含多个etags(但浏览器没必要支持),主要用于SCM over HTTP?
  21. p190 ‘弱验证’
  22. p191 控制缓存
    1. no-store:对于敏感信息,不要缓存!
    2. no-cache:可以缓存,但必须验证
    3. must-revalidate:可以提供新鲜副本,但不可使用旧的
      1. 再验证的情形:如果发生网络错误,返回504
    4. max-age
    5. 不推荐用Expires(时钟不同步)
  23. p193 没有过期信息下的自主决定:‘试探性过期’
    1. LM-factor
  24. p194 Reload/Refresh:刷新Cache!(F5~Shift+F5)
    1. 特殊的Cache-Control:
      1. max-stale:允许“稍微过期”
      2. min-fresh
      3. max-age
      4. no-cache
      5. no-store
      6. no-transform*
      7. only-if-cached(?)
  25. p195 Apache控制
    1. mod_headers:Header set Cache-control ...
    2. mod_expires:ExpiresDefault A3600/M86400/"access plus 1 week"
      ExpiresByType text/html ...
    3. mod_cern_meta*
  26. p196 HTTP-EQUIV(不要用)
  27. p204 Cache与广告 -_-
    1. 日志迁移
    2. RFC 2227 Meter(代理==>Web服务器)
  28. p217 CONNECT
  29. p222 盲中继(relay):直接转发
  30. p226 Web爬虫、robots.txt
    1. BFS, DFS
  31. HTTP-NG
  32. p290 no-cache="Set-Cookie",摘要认证(略)
  33. p324- HTTPS
    1. OpenSSL客户端:% https_client
  34. p358 实体、编码和国际化
  35. p374 分块(chunked),Trailer: Content-MD5(现在应该用SHA1了吧?)
  36. p382 A-IM及226响应
  37. p389 阿拉伯语只有28个字符???
  38. p414 内容协商(略)
  39. p432 虚拟主机(就是7一个Host头部的处理)
  40. p449 WebDAV(这里的协议命令让我想起了Redis)
  41. p469 重定向与负载均衡(LB)
  42. p506 日志与使用情况跟踪
  43. 附录A URI×
  44. 附录B 状态码(略)
  45. 附录C 头部(略)
    1. Warning: 101 111 112 113 199 214 209
  46. 附录D MIME类型 

你可能感兴趣的:(读书笔记)