当我的代理出现内部错误时,返回 502 状态码是不是正确?
Posted
技术标签:
【中文标题】当我的代理出现内部错误时,返回 502 状态码是不是正确?【英文标题】:Is it correct to return a 502 status code when it's my proxy that has an internal error?当我的代理出现内部错误时,返回 502 状态码是否正确? 【发布时间】:2011-05-09 07:52:56 【问题描述】:我编写了一个小型代理,我想知道当代理服务器本身出现内部错误时返回502 Bad Gateway
错误是否正确。 RFC 似乎说只有在另一端的服务器给出错误响应时才这样做。
服务器在充当网关或代理时,在尝试满足请求时从它访问的上游服务器收到了无效响应。
我的意思是,例如,如果上游服务器设置了一个与响应正文长度不同的 content-length
标头,我们应该设置一个 502
错误,即当响应无效时。
我是否误解了 RFC?
【问题讨论】:
【参考方案1】:无效的 Content-Length 也可以作为无效响应(502 错误)处理。 503 只应在条件是临时的时使用,即可以在以后处理相同的请求。
【讨论】:
【参考方案2】:通常的做法是使用 500 AFAIK。这在某种程度上是错误的,因为原始服务器和代理之间没有区别。我还观察到服务器返回 504,但我认为这种行为是错误的。
【讨论】:
以上是关于当我的代理出现内部错误时,返回 502 状态码是不是正确?的主要内容,如果未能解决你的问题,请参考以下文章
AWS Lambda,API Gateway 返回 Malformed Lambda 代理响应,502 错误
Apache https 请求状态等待某些请求并返回 502 状态