HTTP Status Codes/HTTP状态码

1.应用场景

帮助快速查询http code, 以及对应的含义,帮助定位问题。

2.学习/操作

推荐查阅

HTTP Status Codes Glossary - WebFX

STATUS_CODES

{

    '100': 'Continue',  // 持续中

    '101': 'Switching Protocols',    // 转换协议

    '102': 'Processing',    // 进行中

    '200': 'OK',   // 成功

    '201': 'Created',  // 已创建

    '202': 'Accepted',   // 已接受

    '203': 'Non-Authoritative Information',   // 未授权的信息

    '204': 'No Content',     // 没有内容 

    '205': 'Reset Content',   // 重设置内容

    '206': 'Partial Content',   // 局部内容

    '207': 'Multi-Status',   // 多种状态

    '208': 'Already Reported',   // 已经报告

    '226': 'IM Used',  // 使用IM协议 (即时通讯协议(Instant Messaging))

    '300': 'Multiple Choices',  // 多种选择

    '301': 'Moved Permanently',  // 永久移除

    '302': 'Found',  // 已找到

    '303': 'See Other',   // 见其他

    '304': 'Not Modified',  // 未修改

    '305': 'Use Proxy',  // 使用代理 

    '307': 'Temporary Redirect',   // 临时跳转

    '308': 'Permanent Redirect', // 永久跳转

    '400': 'Bad Request',  // 坏请求

    '401': 'Unauthorized', // 未授权

    '402': 'Payment Required', // 要求支付 

    '403': 'Forbidden',   // 禁止

    '404': 'Not Found', // 未找到

    '405': 'Method Not Allowed',  // 不允许的方式

    '406': 'Not Acceptable',  // 不接受

    '407': 'Proxy Authentication Required',  // 要求协议授权

    '408': 'Request Timeout',   // 请求超时

    '409': 'Conflict',  // 冲突

    '410': 'Gone', 

    '411': 'Length Required',

    '412': 'Precondition Failed',

    '413': 'Payload Too Large',

    '414': 'URI Too Long',

    '415': 'Unsupported Media Type',

    '416': 'Range Not Satisfiable',

    '417': 'Expectation Failed',

    '418': 'I\'m a teapot',

    '421': 'Misdirected Request',

    '422': 'Unprocessable Entity',

    '423': 'Locked',

    '424': 'Failed Dependency',

    '425': 'Unordered Collection',

    '426': 'Upgrade Required',

    '428': 'Precondition Required',

    '429': 'Too Many Requests',

    '431': 'Request Header Fields Too Large',

    '451': 'Unavailable For Legal Reasons',

    '500': 'Internal Server Error',

    '501': 'Not Implemented',

    '502': 'Bad Gateway',

    '503': 'Service Unavailable',

    '504': 'Gateway Timeout',

    '505': 'HTTP Version Not Supported',

    '506': 'Variant Also Negotiates',

    '507': 'Insufficient Storage',

    '508': 'Loop Detected',

    '509': 'Bandwidth Limit Exceeded',

    '510': 'Not Extended',

    '511': 'Network Authentication Required'

}

实践验证

301   // Status Code:  301 Moved Permanently (from disk cache)

备注:

即使删除了重定向路由, 重定向还是会生效,  因为浏览器缓存的原因

解决办法: 删除浏览器缓存

另外参考: https://www.jianshu.com/p/1a438e65250d

'302': 'Found',  // 已找到

如果后使重定向路由失效, 则确实失效. 即302临时重定向并不会放入浏览器缓存中

后续补充

...

3.问题/补充

1. 503 服务不可用。 反代无法到达业务服务商。

21 | 为什么用了负载均衡更加不均衡?-极客时间

作者回复:

是的,如果反向代理或者LB找不到可用的后端服务(比如向后端的健康检查都是失败的),就向前端请求回复503~

这里也说一下502,503,504的区别:

502:LB收到了后端的无效回复,可以参考前面的第17讲的案例

503:LB明确的知道服务不可用,LB不会转发请求给后端,而是直接向前端回复503

504:LB转发了请求给后端,但后端没有在时限内返回,到了时间点LB就向前端回复504.

...

4.参考

https://httpstatuses.com/  //HTTP Status Codes

https://www.jianshu.com/p/f84432979107  //HTTP Code

21 | 为什么用了负载均衡更加不均衡?-极客时间

后续补充

...