title | slug | l10n | ||
---|---|---|---|---|
Alt-Svc |
Web/HTTP/Headers/Alt-Svc |
|
{{HTTPSidebar}}
Alt-Svc
は HTTP のヘッダーで、将来のリクエスト時に、そのオリジンのサーバーとして別のネットワーク上の場所(「代替サービス」)を扱うことができることをサーバーが示すことができます。
これにより、実行中のリクエストに影響を与えることなく、新しいプロトコルのバージョンを宣伝することができ、またサーバーのトラフィックを制御するのにも役立ちます。代替サービスを使用しても、エンドユーザーには見えません。URL やリクエストのオリジンのサーバーは変更されず、余分なラウンドトリップも発生しません。
Alt-Svc: clear
Alt-Svc: <protocol-id>=<alt-authority>; ma=<max-age>
Alt-Svc: <protocol-id>=<alt-authority>; ma=<max-age>; persist=1
clear
- : 特別な値
clear
は、そのオリジンのすべての代替を無効にすることをオリジンが要求することを示します。
- : 特別な値
<protocol-id>
- : {{Glossary("ALPN")}} プロトコル識別子。例えば、HTTP/2 の
h2
および HTTP/3 プロトコルのドラフト 25 のh3-25
があります。
- : {{Glossary("ALPN")}} プロトコル識別子。例えば、HTTP/2 の
<alt-authority>
- : 任意のホストのオーバーライド、コロン、および必須のポート番号で構成される代替機関を指定する引用符付きの文字列。
ma=<max-age>
{{optional_inline}}- : 代替サービスが新鮮であると見なす秒数。 省略した場合の既定値 24 時間です。 代替サービスの項目は、最大で <max-age> から({{httpheader("Age")}} ヘッダーからの)レスポンスの経過時間を差し引いた秒数までキャッシュできます。 キャッシュされた項目が期限切れになると、クライアントは新しい接続にこの代替サービスを使用できなくなります。
persist=1
{{optional_inline}}- : 通常、キャッシュされた代替サービス項目は、ネットワーク構成の変更時にクリアされます。
persist=1
引数を使用すると、そのような変更によって項目が削除されなくなります。
- : 通常、キャッシュされた代替サービス項目は、ネットワーク構成の変更時にクリアされます。
区切り文字としてカンマを使用して、単一の Alt-Svc
ヘッダーで複数の項目を指定できます。
その場合、先にある項目がより望ましいとみなされます。
Alt-Svc: h2=":443"; ma=2592000;
Alt-Svc: h2=":443"; ma=2592000; persist=1
Alt-Svc: h2="alt.example.com:443", h2=":443"
Alt-Svc: h3-25=":443"; ma=3600, h2=":443"; ma=3600
{{Specifications}}
{{Compat}}
- Alternative Services (HTTP Working Group 代表 Mark Nottingham による
Alt-Svc
についての記事)