[411] [DFN[[CODE(HTTP)[[[408]]]]]] ([DFN[[[Request Timeout]]]]) は、
[[鯖]]が[[クライアント]]からの[[要求]]を待ち続けて[[タイムアウト]]に達したことを表す[[状態符号]]です。

* 仕様書

[REFS[
- [4] [CITE@en[RFC 7231 - Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content]] ([TIME[2014-08-07 05:54:02 +09:00]] 版) <https://tools.ietf.org/html/rfc7231#section-6.5.7>
]REFS]

* 意味

[6] [CODE(HTTP)[[[408]]]] は、[[鯖]]が待つと準備されていた時間内に完全な[[要求メッセージ]]を[[鯖]]が受信できなかったことを示します
[SRC[>>4]]。

* 構文

[409] [[鯖]]は、 [CODE(HTTP)@en[[[Connection:]] [[close]]]] [[接続オプション]]を送信する[['''べきです''']]
[SRC[>>4]]。

* 処理モデル

[410] [[クライアント]]は、 [CODE(HTTP)[[[408]]]] を受信した後、
転送中だった[[要求]]があれば新しい[[接続]]で繰り返しても構いません [SRC[>>4]]。

* 歴史

[FIG(quote)[
[FIGCAPTION[
[5] RFC 2068 & 2616 (HTTP/1.1) 10.4.9 408 Request Timeout
]FIGCAPTION]

> The client did not produce a request within the time that the server
was prepared to wait. The client MAY repeat the request without
modifications at any later time.

クライアントは、サーバーが待機している時間内に要求を生成しませんでした。
クライアントは、後の時刻に要求を修正なしで繰り返して'''構いません'''。
]FIG]

[REFS[
- [1] [CITE[Issue 377581 - chromium - Chromium does not handle 408 responses - An open-source project to help move the web forward. - Google Project Hosting]]
( ([TIME[2014-07-10 07:11:13 +09:00]] 版))
<https://code.google.com/p/chromium/issues/detail?id=377581>
- [2] [CITE@en[HAProxy and HTTP errors 408 in Chrome | HAProxy Technologies – Aloha Load Balancer]]
( ([TIME[2014-07-10 07:11:56 +09:00]] 版))
<http://blog.haproxy.com/2014/05/26/haproxy-and-http-errors-408-in-chrome/>
- [3] [CITE[chromium chromium/src/net/http/http_network_transaction.cc]]
( ([TIME[2014-07-14 05:04:37 +09:00]] 版))
<http://mxr.mozilla.org/chromium/source/src/net/http/http_network_transaction.cc#1003>
]REFS]


[412] [CITE@en[RFC 3507 - Internet Content Adaptation Protocol (ICAP)]]
( ([TIME[2014-06-08 07:17:07 +09:00]] 版))
<http://tools.ietf.org/html/rfc3507#section-4.3.3>

[7] [CITE@en[errors: change timeout errors from 408 to 500 HTTP status code]]
([[andreastt]]著, [TIME[2018-08-21 18:40:30 +09:00]])
<https://github.com/w3c/webdriver/commit/c377c21186f672105a05383d5152e0a3b2a00374>

[8] [CITE@en[HTTP status code 408 causes clients to retry · Issue #1287 · w3c/webdriver]]
([TIME[2018-09-29 17:22:59 +09:00]])
<https://github.com/w3c/webdriver/issues/1287>

[9] [CITE@en[errors: change timeout errors from 408 to 500 HTTP status code by andreastt · Pull Request #1292 · w3c/webdriver]]
([TIME[2018-09-29 17:24:08 +09:00]])
<https://github.com/w3c/webdriver/pull/1292>