16

这些都是超时错误,但是谁在 408 和 504 中超时?

w3, 408 定义为:

在服务器准备等待的时间内,客户端没有产生请求。客户端可以在以后的任何时间重复请求而无需修改。

...而 504 是:

服务器在充当网关或代理时,没有收到来自 URI(例如 HTTP、FTP、LDAP)指定的上游服务器或它在尝试完成时需要访问的其他辅助服务器(例如 DNS)的及时响应请求。

那么,如果不是中间服务器,谁是 408 中的“客户端”?如果它是一个实际的最终用户,服务器如何知道在他们发出请求之前等待他们的请求?

4

2 回答 2

3

客户端是浏览器或客户端应用程序。服务器知道等待请求是因为它已经接受了一个连接,或者已经读取了请求的一部分,比如一两个标头。

于 2016-04-04T00:38:00.900 回答
3

亚马逊文档告诉:http ://docs.aws.amazon.com/en_en/elasticloadbalancing/latest/classic/ts-elb-error-message.html#ts-elb-errorcodes-http408

表示客户端取消请求或发送完整请求失败

Mozilla文档告诉:https ://developer.mozilla.org/en/docs/Web/HTTP/Status/408

HTTP 408 Request Timeout 响应状态码意味着服务器想要关闭这个未使用的连接。它是由某些服务器在空闲连接上发送的,即使客户端之前没有任何请求

于 2017-06-06T21:20:12.933 回答