HTTP
| 请求报文的结构 | 响应报文结构 |
|---|---|
| 请求行 | 响应行 |
| 请求首部字段 | 响应首部字段 |
| 通用首部字段 | 通用首部字段 |
| 实体首部字段 | 实体首部字段 |
状态码
| HTTP状态码 | 原因 |
|---|---|
| 200 OK | 请求正常处理 |
| 204 No Content | 请求处理成功,无资源可以返回 |
| 206 Partial Content | 客户端进行范围请求,服务器成功执行 |
| 301 Moved Permanently | 永久性重定向(更新引用) |
| 302 Found | 临时性重定向(本次使用新的URI) |
| 303 See Other | 临时按照新的URI访问 |
| 304 Not Modified | 客服端发送附带条件的请求,服务端允许访问,但无能满足条件的情况 |
| 307 Temporary Redirect | 临时重定向 |
| 400 Bad Request | 请求报文中存在语法错误 |
| 401 Unauthorized | 请求认证失败 |
| 403 Forbidden | 请求的资源被服务器拒绝了 |
| 404 Not Found | 服务器上无法找到请求的资源 |
| 500 Internal Server Error | 服务器执行请求时发生错误 |
| 503 Service Unavailable | 服务器超负载运行或者停机维护 |
| 504 GatewayTimeout | 请求缓存服务器的本地缓存无响应 |
通信数据转发程序:代理(接收客户端请求转发给其他服务器),网关(非HTTP协议),隧道(不解析HTTP请求)
缓存服务器:避免多次从原服务器转发资源
FTP协议:文件传输协议
HTTP首部字段结构
- Cache-Control
| 缓存请求指令 | 说明 | 注意 | |
|---|---|---|---|
| no-chache | 强制向源服务器再次验证 | ||
| no-store | 不缓存请求或响应的任何内容 | ||
| max-age=[秒] | 响应最大age值 | ||
| max-stale=[秒] | 接收已过期的响应 | ||
| min-fresh=[秒] | 期望指定时间内的响应扔有效 | 过了指定秒的资源将无法作为响应返回了 | |
| no-transform | 代理不可更改媒体类型 | ||
| only-if-cached | 从缓存中获取资源 | ||
| cache-extension | 新指令标记 |
| 响应请求指令 | 说明 | 注意 |
|---|---|---|
| public | 可向任意方提供响应的缓存 | |
| private | 仅向特定用户返回响应 | |
| no-cache | 缓存前必须确认其有效性 | 为了防止返回过期的资源 |
| no-store | 不缓存请求或响应的任何内容 | 暗示请求或响应包含机密信息 |
| no-transform | 代理不可更改媒体类型 | |
| must-revalidate | 可缓存但必须向原服务器确认 | |
| proxy-revalidate | 必须要求中键缓存服务器对缓存的响应有效性再次确认 | |
| max-age=[秒] | 响应的最大Age值 | max-age值为0,缓存将请求转发给源服务器 |
| s-maxage | 公共缓存服务器的最大Age值 | |
| cache-extension | 新指令标记 |
- Connection