Internet Engineering Task Force (IETF)                     M. Nottingham
Request for Comments: 9209                                        Fastly
Category: Standards Track                                      P. Sikora
ISSN: 2070-1721                                                   Google
                                                               June 2022
        

The Proxy-Status HTTP Response Header Field

プロキシステータスHTTP応答ヘッダーフィールド

Abstract

概要

This document defines the Proxy-Status HTTP response field to convey the details of an intermediary's response handling, including generated errors.

このドキュメントでは、プロキシステータスHTTP応答フィールドを定義して、生成されたエラーを含む仲介者の応答処理の詳細を伝えます。

Status of This Memo

本文書の位置付け

This is an Internet Standards Track document.

これは、インターネット標準トラックドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.

このドキュメントは、インターネットエンジニアリングタスクフォース(IETF)の製品です。IETFコミュニティのコンセンサスを表しています。公開レビューを受けており、インターネットエンジニアリングステアリンググループ(IESG)からの出版が承認されています。インターネット標準の詳細については、RFC 7841のセクション2で入手できます。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/rfc9209.

このドキュメントの現在のステータス、任意のERRATA、およびそのフィードバックを提供する方法に関する情報は、https://www.rfc-editor.org/info/rfc9209で取得できます。

Copyright Notice

著作権表示

Copyright (c) 2022 IETF Trust and the persons identified as the document authors. All rights reserved.

著作権(c)2022 IETF Trustおよび文書著者として特定された人。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.

このドキュメントは、BCP 78およびIETFドキュメント(https://trustee.ietf.org/license-info)に関連するIETF Trustの法的規定の対象となります。この文書に関するあなたの権利と制限を説明するので、これらの文書を注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、セクション4.Eで説明されている法的規定のセクション4.Eで説明されており、修正されたBSDライセンスで説明されているように保証なしで提供される修正されたBSDライセンステキストを含める必要があります。

Table of Contents

目次

   1.  Introduction
     1.1.  Notational Conventions
   2.  The Proxy-Status HTTP Field
     2.1.  Proxy-Status Parameters
       2.1.1.  error
       2.1.2.  next-hop
       2.1.3.  next-protocol
       2.1.4.  received-status
       2.1.5.  details
     2.2.  Defining New Proxy-Status Parameters
     2.3.  Proxy Error Types
       2.3.1.  DNS Timeout
       2.3.2.  DNS Error
       2.3.3.  Destination Not Found
       2.3.4.  Destination Unavailable
       2.3.5.  Destination IP Prohibited
       2.3.6.  Destination IP Unroutable
       2.3.7.  Connection Refused
       2.3.8.  Connection Terminated
       2.3.9.  Connection Timeout
       2.3.10. Connection Read Timeout
       2.3.11. Connection Write Timeout
       2.3.12. Connection Limit Reached
       2.3.13. TLS Protocol Error
       2.3.14. TLS Certificate Error
       2.3.15. TLS Alert Received
       2.3.16. HTTP Request Error
       2.3.17. HTTP Request Denied
       2.3.18. HTTP Incomplete Response
       2.3.19. HTTP Response Header Section Too Large
       2.3.20. HTTP Response Header Field Line Too Large
       2.3.21. HTTP Response Body Too Large
       2.3.22. HTTP Response Trailer Section Too Large
       2.3.23. HTTP Response Trailer Field Line Too Large
       2.3.24. HTTP Response Transfer-Coding Error
       2.3.25. HTTP Response Content-Coding Error
       2.3.26. HTTP Response Timeout
       2.3.27. HTTP Upgrade Failed
       2.3.28. HTTP Protocol Error
       2.3.29. Proxy Internal Response
       2.3.30. Proxy Internal Error
       2.3.31. Proxy Configuration Error
       2.3.32. Proxy Loop Detected
     2.4.  Defining New Proxy Error Types
   3.  IANA Considerations
   4.  Security Considerations
   5.  References
     5.1.  Normative References
     5.2.  Informative References
   Authors' Addresses
        
1. Introduction
1. はじめに

HTTP intermediaries (see Section 3.7 of [HTTP]) -- including both forward proxies and gateways (also known as "reverse proxies") -- have become an increasingly significant part of HTTP deployments. In particular, reverse proxies and content delivery networks (CDNs) form part of the critical infrastructure of many websites.

HTTP仲介者([HTTP]のセクション3.7を参照) - フォワードプロキシとゲートウェイ(「リバースプロキシ」とも呼ばれる)の両方を含む - は、HTTP展開のますます重要な部分になりました。特に、リバースプロキシとコンテンツ配信ネットワーク(CDN)は、多くのWebサイトの重要なインフラストラクチャの一部を形成します。

Typically, HTTP intermediaries forward requests towards the origin server (inbound) and then forward their responses back to clients (outbound). However, if an error occurs before a response is obtained from an inbound server, the response is often generated by the intermediary itself.

通常、HTTP仲介者はOrigin Server(Inbound)に転送され、その後クライアント(アウトバウンド)に返信を転送します。ただし、インバウンドサーバーから応答が得られる前にエラーが発生した場合、応答は中間自体によってしばしば生成されます。

HTTP accommodates these types of errors with a few status codes -- for example, 502 (Bad Gateway) and 504 (Gateway Timeout). However, experience has shown that more information is necessary to aid debugging and communicate what's happened to the client. Additionally, intermediaries sometimes want to convey additional information about their handling of a response, even if they did not generate it.

HTTPは、これらのタイプのエラーに対応します。たとえば、502(悪いゲートウェイ)と504(ゲートウェイタイムアウト)など、いくつかのステータスコードがあります。ただし、クライアントに何が起こったのかをデバッグし、伝えるために、より多くの情報が必要であることが経験があることが示されています。さらに、仲介業者は、たとえそれを生成しなくても、応答の処理に関する追加情報を伝えたい場合があります。

To enable these uses, Section 2 defines a new HTTP response field to allow intermediaries to convey details of their handling of a response. Section 2.1 enumerates the information that can be added to the field by intermediaries, which can be extended per Section 2.2. Section 2.3 defines a set of error types for use when a proxy encounters an issue when obtaining a response for the request; these can likewise be extended per Section 2.4.

これらの使用を有効にするために、セクション2では、新しいHTTP応答フィールドを定義して、仲介者が応答の処理の詳細を伝えることができます。セクション2.1では、セクション2.2に従って拡張できる仲介者がフィールドに追加できる情報を列挙しています。セクション2.3は、リクエストの応答を取得する際にプロキシが問題に遭遇する場合に使用するための一連のエラータイプを定義します。同様に、これらはセクション2.4に従って拡張できます。

1.1. Notational Conventions
1.1. 表記規則

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

この文書のキーワード "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", および "OPTIONAL" はBCP 14 [RFC2119] [RFC8174]で説明されているように、すべて大文字の場合にのみ解釈されます。

This document uses the following terminology from Section 3 of [STRUCTURED-FIELDS] to specify syntax and parsing: List, String, Token, Integer, and Byte Sequence.

このドキュメントでは、[構造化場]のセクション3の次の用語を使用して、リスト、文字列、トークン、整数、およびバイトシーケンスの構文と解析を指定します。

Note that in this specification, "proxy" is used to indicate both forward and reverse proxies, otherwise known as gateways. "Next hop" indicates the connection in the direction leading to the origin server for the request.

この仕様では、「プロキシ」は、ゲートウェイとも呼ばれます。「次のホップ」は、リクエストのOrigin Serverにつながる方向の接続を示します。

2. The Proxy-Status HTTP Field
2. プロキシステータスHTTPフィールド

The Proxy-Status HTTP response field allows an intermediary to convey additional information about its handling of a response and its associated request.

プロキシステータスHTTP応答フィールドにより、仲介者は応答の処理と関連するリクエストに関する追加情報を伝えることができます。

Its value is a List (see Section 3.1 of [STRUCTURED-FIELDS]). Each member of the List represents an intermediary that has handled the response. The first member represents the intermediary closest to the origin server, and the last member represents the intermediary closest to the user agent.

その値はリストです([構造化場]のセクション3.1を参照)。リストの各メンバーは、応答を処理した仲介者を表します。最初のメンバーは、Origin Serverに最も近い仲介者を表し、最後のメンバーはユーザーエージェントに最も近い仲介者を表します。

For example:

例えば:

Proxy-Status: revproxy1.example.net, ExampleCDN

Proxy-status:revproxy1.example.net、Examplecdn

indicates that this response was handled first by revproxy1.example.net (a reverse proxy adjacent to the origin server) and then ExampleCDN.

この応答が最初にRevproxy1.example.net(Origin Serverに隣接する逆プロキシ)、次にExamplecdnによって処理されたことを示します。

Intermediaries determine when it is appropriate to add the Proxy-Status field to a response. Some might decide to append it to all responses, whereas others might only do so when specifically configured to or when the request contains a header field that activates a debugging mode.

仲介者は、プロキシステータスフィールドを応答に追加することがいつ適切であるかを決定します。すべての応答に追加することを決定する人もいますが、他の人は、デバッグモードをアクティブにするヘッダーフィールドに具体的に構成されている場合、またはリクエストに含まれる場合にのみ行う場合があります。

Each member of the List identifies the intermediary that inserted the value and MUST have a type of either String or Token. Depending on the deployment, this might be a service name (but not a software or hardware product name; e.g., "ExampleCDN" is appropriate, but "ExampleProxy" is not because it doesn't identify the deployment), a hostname ("proxy-3.example.com"), an IP address, or a generated string.

リストの各メンバーは、値を挿入し、文字列またはトークンのいずれかの種類が必要な仲介者を識別します。展開に応じて、これはサービス名である可能性があります(ただし、ソフトウェアまたはハードウェア製品名ではありません。たとえば、「ExampleCDN」が適切ですが、「ExampleProxy」は展開を識別しないためではありません)、ホスト名( "プロキシ)-3.example.com ")、IPアドレス、または生成された文字列。

Parameters of each member (per Section 3.1.2 of [STRUCTURED-FIELDS]) convey additional information about that intermediary's handling of the response and its associated request; see Section 2.1. While all of these parameters are OPTIONAL, intermediaries are encouraged to provide as much information as possible (but see Section 4 for security considerations in doing so).

各メンバーのパラメーター([構造化場]のセクション3.1.2ごと)は、その仲介者が回答の処理とそれに関連する要求に関する追加情報を伝えます。セクション2.1を参照してください。これらのパラメーターはすべてオプションですが、仲介者はできるだけ多くの情報を提供することをお勧めします(ただし、セキュリティに関する考慮事項についてはセクション4を参照してください)。

When adding a value to the Proxy-Status field, intermediaries SHOULD preserve the existing members of the field to allow debugging of the entire chain of intermediaries handling the request unless explicitly configured to remove them (e.g., to prevent internal network details from leaking; see Section 4).

プロキシステータスフィールドに値を追加する場合、仲介者はフィールドの既存のメンバーを保存して、リクエストを削除するように明示的に構成されていない限り、リクエストを処理する仲介者のチェーン全体のデバッグを許可する必要があります(たとえば、内部ネットワークの詳細が漏れないように。セクション4)。

Origin servers MUST NOT generate the Proxy-Status field.

Origin Serverは、プロキシステータスフィールドを生成してはなりません。

Proxy-Status MAY be sent as an HTTP trailer field. For example, if an intermediary is streaming a response and the inbound connection suddenly terminates, Proxy-Status can only be appended to the trailer section of the outbound message since the header section has already been sent. However, because it might be silently discarded along the path to the user agent (as is the case for all trailer fields; see Section 6.5 of [HTTP]), Proxy-Status SHOULD NOT be sent as a trailer field unless it is not possible to send it in the header section.

プロキシステータスは、HTTPトレーラーフィールドとして送信できます。たとえば、仲介者が応答をストリーミングし、インバウンド接続が突然終了している場合、ヘッダーセクションがすでに送信されているため、プロキシステータスはアウトバウンドメッセージのトレーラーセクションにのみ追加できます。ただし、ユーザーエージェントへのパスに沿って静かに破棄される可能性があるため(すべてのトレーラーフィールドの場合のように、[http]のセクション6.5を参照)、プロキシステータスは、不可能な場合を除き、トレーラーフィールドとして送信しないでくださいヘッダーセクションに送信します。

To allow recipients to reconstruct the relative ordering of Proxy-Status members conveyed in trailer fields with those conveyed in header fields, an intermediary MUST NOT send Proxy-Status as a trailer field unless it has also generated a Proxy-Status header field with the same member (although potentially different parameters) in that message.

受信者がトレーラーフィールドで伝えられたプロキシステータスメンバーの相対的な順序を再構築できるようにするには、ヘッダーフィールドで伝達されるものと一緒に、仲介者は、同じものを生成しない限り、プロキシステータスをトレーラーフィールドとして送信してはなりません。そのメッセージのメンバー(潜在的に異なるパラメーター)。

For example, a proxy identified as 'ThisProxy' that receives a response bearing a header field:

たとえば、ヘッダーフィールドを持つ応答を受信する「このプロキシ」として識別されたプロキシ:

Proxy-Status: SomeOtherProxy

プロキシステータス:sotherproxy

would add its own entry to the header field:

ヘッダーフィールドに独自のエントリを追加します。

Proxy-Status: SomeOtherProxy, ThisProxy

プロキシステータス:sotherproxy、このプロキシ

thus allowing it to append a trailer field:

したがって、トレーラーフィールドを追加できるようにします。

   Proxy-Status: ThisProxy; error=read_timeout
        

which would thereby allow a downstream recipient to understand that processing by 'SomeOtherProxy' occurred before 'ThisProxy'.

これにより、下流の受信者は「soterproxy」による処理が「Thisproxy」の前に発生したことを理解することができます。

A client MAY promote the Proxy-Status trailer field into a header field by following these steps:

クライアントは、これらの手順に従ってプロキシステータストレーラーフィールドをヘッダーフィールドに宣伝する場合があります。

1. For each member trailer_member of the Proxy-Status trailer field value:

1. 各メンバーのトレーラー_メンバーのプロキシステータストレーラーフィールド値のメンバー:

1. Let header_member be the first (leftmost) value of the Proxy-Status header field value, comparing the String or Token character by character without consideration of parameters.

1. header_memberをプロキシステータスヘッダーフィールド値の最初の(左端の)値とし、パラメーターを考慮せずに文字列またはトークンの文字をキャラクターで比較します。

2. If no matching header_member is found, continue processing the next trailer_member.

2. 一致するheader_memberが見つからない場合は、次のTrailer_memberの処理を続けます。

3. Replace header_member with trailer_member in its entirety, including any parameters.

3. header_memberを、パラメーターを含むTrailer_member全体を完全に置き換えます。

2. Remove the Proxy-Status trailer field if empty.

2. 空の場合は、プロキシステータストレーラーフィールドを削除します。

2.1. Proxy-Status Parameters
2.1. プロキシステータスパラメーター

This section lists parameters that can be used on the members of the Proxy-Status field. Unrecognised parameters MUST be ignored.

このセクションには、プロキシステータスフィールドのメンバーで使用できるパラメーターをリストします。認識されていないパラメーターは無視する必要があります。

2.1.1. error
2.1.1. エラー

The error parameter's value is a Token that is a proxy error type. When present, it indicates that the intermediary encountered an issue when obtaining this response.

エラーパラメーターの値は、プロキシエラータイプであるトークンです。存在する場合、この応答を取得する際に仲介者が問題に遭遇したことを示します。

The presence of some proxy error types indicates that the response was generated by the intermediary itself, rather than being forwarded from the origin server. This is the case when, for example, the origin server can't be contacted, so the proxy has to create its own response.

いくつかのプロキシエラータイプの存在は、Origin Serverから転送されるのではなく、中間体自体によって応答が生成されたことを示しています。これは、たとえば、Origin Serverに連絡できない場合があるため、プロキシは独自の応答を作成する必要があります。

Other proxy error types can be added to (potentially partial) responses that were generated by the origin server or some other inbound server. For example, if the forward connection abruptly closes, an intermediary might add Proxy-Status with an appropriate error as a trailer field.

他のプロキシエラータイプは、Origin Serverまたは他のインバウンドサーバーによって生成された(潜在的に部分的な)応答に追加できます。たとえば、フォワード接続が突然閉じると、仲介者がトレーラーフィールドとして適切なエラーを備えたプロキシステータスを追加する可能性があります。

Proxy error types that are registered with a 'Response only generated by intermediaries' value of 'true' indicate that they can only occur in responses generated by the intermediary. If the value is 'false', the response might be generated by the intermediary or an inbound server.

「True」の「仲介者のみによって生成される応答のみが生成される応答」で登録されているプロキシエラータイプは、中間によって生成された応答でのみ発生することができることを示しています。値が「false」の場合、応答は仲介者またはインバウンドサーバーによって生成される場合があります。

Section 2.3 lists the proxy error types defined in this document; new ones can be defined using the procedure outlined in Section 2.4.

セクション2.3には、このドキュメントで定義されているプロキシエラータイプを示します。新しいものは、セクション2.4で概説されている手順を使用して定義できます。

For example:

例えば:

   HTTP/1.1 504 Gateway Timeout
   Proxy-Status: ExampleCDN; error=connection_timeout
        

indicates that this 504 response was generated by ExampleCDN due to a connection timeout when going forward.

この504応答は、今後の接続タイムアウトにより、ExampleCDNによって生成されたことを示します。

Or:

または:

   HTTP/1.1 429 Too Many Requests
   Proxy-Status: r34.example.net; error=http_request_error, ExampleCDN
        

indicates that this 429 (Too Many Requests) response was generated by r34.example.net, not the CDN or the origin.

この429(あまりにも多くのリクエスト)応答が、CDNまたは原点ではなくR34.example.netによって生成されたことを示します。

When sending the error parameter, the most specific proxy error type SHOULD be sent, provided that it accurately represents the error condition. If an appropriate proxy error type is not defined, there are a number of generic error types (e.g., proxy_internal_error, http_protocol_error) that can be used. If they are not suitable, consider registering a new proxy error type (see Section 2.4).

エラーパラメーターを送信する場合、エラー条件を正確に表す場合、最も特定のプロキシエラータイプを送信する必要があります。適切なプロキシエラータイプが定義されていない場合、使用できる多くの汎用エラータイプ(proxy_internal_error、http_protocol_error)があります。それらが適切でない場合は、新しいプロキシエラータイプを登録することを検討してください(セクション2.4を参照)。

Each proxy error type has a recommended HTTP status code. When generating an HTTP response containing the error, its HTTP status code SHOULD be set to the recommended HTTP status code. However, there may be circumstances (e.g., for backwards compatibility with previous behaviours, a status code has already been sent) when another status code might be used.

各プロキシエラータイプには、推奨されるHTTPステータスコードがあります。エラーを含むHTTP応答を生成する場合、そのHTTPステータスコードを推奨されるHTTPステータスコードに設定する必要があります。ただし、別のステータスコードを使用する場合、状況(たとえば、以前の動作との逆方向の互換性、ステータスコードが既に送信されている場合)があります。

Proxy error types can also define any number of extra parameters for use with that type. Their use, like all parameters, is optional. As a result, if an extra parameter is used with a proxy error type for which it is not defined, it will be ignored.

プロキシエラータイプは、そのタイプで使用するための任意の数の追加パラメーターを定義することもできます。それらの使用は、すべてのパラメーターと同様に、オプションです。その結果、定義されていないプロキシエラータイプで追加のパラメーターが使用される場合、無視されます。

2.1.2. next-hop
2.1.2. next-hop

The next-hop parameter's value is a String or Token that identifies the intermediary or origin server selected (and used, if contacted) to obtain this response. It might be a hostname, IP address, or alias.

Next-Hopパラメーターの値は、この応答を取得するために選択された中間またはOrigin Serverを識別する(および連絡された場合に使用される)文字列またはトークンです。ホスト名、IPアドレス、またはエイリアスかもしれません。

For example:

例えば:

   Proxy-Status: cdn.example.org; next-hop=backend.example.org:8001
        

indicates that cdn.example.org used backend.example.org:8001 as the next hop for this request.

cdn.example.orgがこのリクエストの次のホップとしてbackend.example.org:8001を使用したことを示します。

2.1.3. next-protocol
2.1.3. 次のプロトコル

The next-protocol parameter's value indicates the Application-Layer Protocol Negotiation (ALPN) protocol identifier [RFC7301] of the protocol used by the intermediary to connect to the next hop when obtaining this response.

次のプロトコルパラメーターの値は、この応答を取得するときに次のホップに接続するために中間ホップに接続するために中級者が使用するプロトコルのアプリケーション層プロトコルネゴシエーション(ALPN)プロトコル識別子識別子[RFC7301]を示します。

The value MUST be either a Token or Byte Sequence representing a TLS ALPN Protocol ID (see <https://www.iana.org/assignments/tls-extensiontype-values#alpn-protocol-ids>). If the protocol identifier is able to be expressed as a Token using ASCII encoding, that form MUST be used.

値は、TLS ALPNプロトコルIDを表すトークンまたはバイトシーケンスのいずれかでなければなりません(<https://www.iana.org/assignments/tls-extensiontype-values#alpn-protocol-ids>を参照)。ASCIIエンコードを使用してプロトコル識別子をトークンとして表現できる場合、そのフォームを使用する必要があります。

For example:

例えば:

   Proxy-Status: "proxy.example.org"; next-protocol=h2
        

Note that the ALPN identifier is being used here to identify the protocol in use; it may or may not have been actually used in the protocol negotiation.

ここでは、ALPN識別子が使用されているプロトコルを識別するために使用されていることに注意してください。プロトコルの交渉で実際に使用されていた場合とそうでない場合があります。

2.1.4. received-status
2.1.4. 受信状態

The received-status parameter's value indicates the HTTP status code that the intermediary received from the next-hop server when obtaining this response.

受信したステータスパラメーターの値は、この応答を取得したときに仲介者がNext-Hopサーバーから受け取ったHTTPステータスコードを示します。

The value MUST be an Integer.

値は整数でなければなりません。

For example:

例えば:

   Proxy-Status: ExampleCDN; received-status=200
        
2.1.5. details
2.1.5. 詳細

The details parameter's value is a String containing additional information not captured anywhere else. This can include implementation-specific or deployment-specific information.

詳細パラメーターの値は、他の場所ではキャプチャされていない追加情報を含む文字列です。これには、実装固有または展開固有の情報が含まれます。

For example:

例えば:

   Proxy-Status: proxy.example.net; error="http_protocol_error";
                 details="Malformed response header: space before colon"
        
2.2. Defining New Proxy-Status Parameters
2.2. 新しいプロキシステータスパラメーターの定義

New Proxy-Status parameters can be defined by registering them in the "HTTP Proxy-Status Parameters" registry.

新しいプロキシステータスパラメーターは、「HTTP Proxy-Statusパラメーター」レジストリに登録することで定義できます。

Registration requests are reviewed and approved by Expert Review, per [RFC8126], Section 4.5. A specification document is appreciated but not required.

登録要求は、[RFC8126]、セクション4.5ごとに、専門家のレビューによってレビューおよび承認されます。仕様ドキュメントは高く評価されていますが、必要ありません。

The expert(s) should consider the following factors when evaluating requests:

専門家は、リクエストを評価する際に次の要因を考慮する必要があります。

* Community feedback

* コミュニティフィードバック

* If the value is sufficiently well defined

* 値が十分に定義されている場合

* Generic parameters are preferred over vendor-specific, application-specific, or deployment-specific values. If a generic value cannot be agreed upon in the community, the parameter's name should be correspondingly specific (e.g., with a prefix that identifies the vendor, application, or deployment).

* ジェネリックパラメーターは、ベンダー固有、アプリケーション固有、または展開固有の値よりも好まれます。コミュニティで一般的な値を合意できない場合、パラメーターの名前はそれに応じて具体的でなければなりません(たとえば、ベンダー、アプリケーション、または展開を識別するプレフィックスを使用)。

* Parameter names should not conflict with registered extra parameters in the "HTTP Proxy Error Types" registry.

* パラメーター名は、「HTTPプロキシエラータイプ」レジストリの登録された追加パラメーターと競合してはなりません。

Registration requests should use the following template:

登録リクエストは、次のテンプレートを使用する必要があります。

Name: [a name for the Proxy-Status parameter that matches key]

名前:[キーに一致するプロキシステータスパラメーターの名前]

Description: [a description of the parameter semantics and value]

説明:[パラメーターセマンティクスと値の説明]

Reference: [to a specification defining this parameter; optional]

参照:[このパラメーターを定義する仕様。オプション]

See the registry at <https://www.iana.org/assignments/http-proxy-status> for details on where to send registration requests.

登録リクエストの送信先の詳細については、<https://www.iana.org/assignments/http-proxy-status>のレジストリを参照してください。

2.3. Proxy Error Types
2.3. プロキシエラータイプ

This section lists the proxy error types defined by this document. See Section 2.4 for information about defining new proxy error types.

このセクションには、このドキュメントで定義されたプロキシエラータイプをリストします。新しいプロキシエラータイプの定義については、セクション2.4を参照してください。

Note that implementations might not produce all proxy error types. The set of types below is designed to map to existing states in implementations and therefore may not be applicable to some.

実装は、すべてのプロキシエラータイプを生成しない場合があることに注意してください。以下のタイプのセットは、実装で既存の状態にマッピングするように設計されているため、一部には適用できない場合があります。

2.3.1. DNS Timeout
2.3.1. DNSタイムアウト

Name: dns_timeout

名前:dns_timeout

Description: The intermediary encountered a timeout when trying to find an IP address for the next-hop hostname.

説明:次のホップホスト名のIPアドレスを見つけようとすると、仲介者はタイムアウトに遭遇しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 504

推奨されるHTTPステータスコード:504

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.2. DNS Error
2.3.2. DNSエラー

Name: dns_error

名前:DNS_ERROR

Description: The intermediary encountered a DNS error when trying to find an IP address for the next-hop hostname.

説明:次のホップホスト名のIPアドレスを見つけようとしたときに、仲介者はDNSエラーに遭遇しました。

Extra Parameters:

追加のパラメーター:

rcode: A String conveying the DNS RCODE that indicates the error type. See [RFC8499], Section 3.

rcode:エラータイプを示すDNS rcodeを運ぶ文字列。[RFC8499]、セクション3を参照してください。

info-code: An Integer conveying the Extended DNS Error Code INFO-CODE. See [RFC8914].

情報コード:拡張されたDNSエラーコード情報コードを運ぶ整数。[RFC8914]を参照してください。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.3. Destination Not Found
2.3.3. 目的地が見つかりません

Name: destination_not_found

名前:destination_not_found

Description: The intermediary cannot determine the appropriate next hop to use for this request; for example, it may not be configured. Note that this error is specific to gateways, which typically require specific configuration to identify the "backend" server; forward proxies use in-band information to identify the origin server.

説明:仲介者は、このリクエストに使用する適切な次のホップを決定することはできません。たとえば、構成されていない場合があります。このエラーはゲートウェイに固有のものであり、通常、「バックエンド」サーバーを識別するために特定の構成が必要です。フォワードプロキシは、バンド内情報を使用してOrigin Serverを識別します。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 500

推奨されるHTTPステータスコード:500

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.4. Destination Unavailable
2.3.4. 宛先は利用できません

Name: destination_unavailable

名前:destination_unavailable

Description: The intermediary considers the next hop to be unavailable; e.g., recent attempts to communicate with it may have failed, or a health check may indicate that it is down.

説明:仲介者は、次のホップを利用できないと考えています。たとえば、最近の通信の試みが失敗した可能性があります。または、健康チェックが減少していることを示している可能性があります。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 503

推奨されるHTTPステータスコード:503

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.5. Destination IP Prohibited
2.3.5. 宛先IPが禁止されています

Name: destination_ip_prohibited

名前:Destination_IP_PROIBITED

Description: The intermediary is configured to prohibit connections to the next-hop IP address.

説明:仲介者は、Next-Hop IPアドレスへの接続を禁止するように構成されています。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.6. Destination IP Unroutable
2.3.6. 宛先IPは不可能です

Name: destination_ip_unroutable

名前:destination_ip_unroutable

Description: The intermediary cannot find a route to the next-hop IP address.

説明:仲介者は、Next-Hop IPアドレスへのルートを見つけることができません。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.7. Connection Refused
2.3.7. 接続拒否

Name: connection_refused

名前:connection_refused

Description: The intermediary's connection to the next hop was refused.

説明:次のホップへの仲介者の接続は拒否されました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.8. Connection Terminated
2.3.8. 接続終了

Name: connection_terminated

名前:connection_terminated

Description: The intermediary's connection to the next hop was closed before a complete response was received.

説明:完全な応答を受信する前に、次のホップへの仲介者の接続が閉じられました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.9. Connection Timeout
2.3.9. 接続タイムアウト

Name: connection_timeout

名前:connection_timeout

Description: The intermediary's attempt to open a connection to the next hop timed out.

説明:次のホップへの接続を開くための仲介者の試み。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 504

推奨されるHTTPステータスコード:504

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.10. Connection Read Timeout
2.3.10. 接続読み取りタイムアウト

Name: connection_read_timeout

名前:connection_read_timeout

Description: The intermediary was expecting data on a connection (e.g., part of a response) but did not receive any new data in a configured time limit.

説明:仲介者は、接続に関するデータ(応答の一部など)のデータを期待していましたが、構成された時間制限で新しいデータを受信しませんでした。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 504

推奨されるHTTPステータスコード:504

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.11. Connection Write Timeout
2.3.11. 接続書き込みタイムアウト

Name: connection_write_timeout

名前:connection_write_timeout

Description: The intermediary was attempting to write data to a connection but was not able to (e.g., because its buffers were full).

説明:仲介者は接続にデータを書き込もうとしていましたが、できませんでした(たとえば、バッファーがいっぱいだったため)。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 504

推奨されるHTTPステータスコード:504

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.12. Connection Limit Reached
2.3.12. 接続制限に達しました

Name: connection_limit_reached

名前:connection_limit_reached

Description: The intermediary is configured to limit the number of connections it has to the next hop, and that limit has been exceeded.

説明:仲介者は、次のホップに持っている接続の数を制限するように構成されており、その制限は超えています。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 503

推奨されるHTTPステータスコード:503

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.13. TLS Protocol Error
2.3.13. TLSプロトコルエラー

Name: tls_protocol_error

名前:tls_protocol_error

Description: The intermediary encountered a TLS error when communicating with the next hop, either during the handshake or afterwards.

説明:仲介者は、握手中または後に次のホップと通信するときにTLSエラーに遭遇しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

Notes: Not appropriate when a TLS alert is received; see tls_alert_received.

注:TLSアラートを受信した場合は適切ではありません。tls_alert_receivedを参照してください。

2.3.14. TLS Certificate Error
2.3.14. TLS証明書エラー

Name: tls_certificate_error

名前:tls_certificate_error

Description: The intermediary encountered an error when verifying the certificate presented by the next hop.

説明:次のホップによって提示された証明書を確認するときに、仲介者はエラーに遭遇しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.15. TLS Alert Received
2.3.15. TLSアラートを受信しました

Name: tls_alert_received

名前:TLS_ALERT_RECEIVED

Description: The intermediary received a TLS alert from the next hop.

説明:仲介者は次のホップからTLSアラートを受け取りました。

Extra Parameters:

追加のパラメーター:

alert-id: An Integer containing the applicable value from the "TLS Alerts" registry. See [TLS].

Alert-ID:「TLSアラート」レジストリから該当する値を含む整数。[TLS]を参照してください。

alert-message: A Token or String containing the applicable description string from the "TLS Alerts" registry. See [TLS].

Alert-Message:「TLSアラート」レジストリから該当する説明文字列を含むトークンまたは文字列。[TLS]を参照してください。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.16. HTTP Request Error
2.3.16. HTTP要求エラー

Name: http_request_error

名前:http_request_error

Description: The intermediary is generating a client (4xx) response on the origin's behalf. Applicable status codes include (but are not limited to) 400, 403, 405, 406, 408, 411, 413, 414, 415, 416, 417, and 429.

説明:仲介者は、オリジンに代わってクライアント(4xx)応答を生成しています。適用されるステータスコードには、400、403、405、406、408、411、413、414、415、416、417、429が含まれます(ただしに限定されません)。

Extra Parameters:

追加のパラメーター:

status-code: An Integer containing the generated status code.

ステータスコード:生成されたステータスコードを含む整数。

status-phrase: A String containing the generated status phrase.

ステータス-Phrase:生成されたステータスフレーズを含む文字列。

Recommended HTTP Status Code: The applicable 4xx status code

推奨されるHTTPステータスコード:該当する4XXステータスコード

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

Notes: This type helps distinguish between responses generated by intermediaries from those generated by the origin.

注:このタイプは、仲介者によって生成された応答と起源によって生成された応答を区別するのに役立ちます。

2.3.17. HTTP Request Denied
2.3.17. httpリクエストは拒否されました

Name: http_request_denied

名前:http_request_denied

Description: The intermediary rejected the HTTP request based on its configuration and/or policy settings. The request wasn't forwarded to the next hop.

説明:仲介者は、その構成および/またはポリシー設定に基づいてHTTP要求を拒否しました。リクエストは次のホップに転送されませんでした。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 403

推奨されるHTTPステータスコード:403

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.18. HTTP Incomplete Response
2.3.18. HTTP不完全な応答

Name: http_response_incomplete

名前:http_response_incomplete

Description: The intermediary received an incomplete response to the request from the next hop.

説明:仲介者は、次のホップからのリクエストに対する不完全な応答を受け取りました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.19. HTTP Response Header Section Too Large
2.3.19. HTTP応答ヘッダーセクションが大きすぎます

Name: http_response_header_section_size

名前:http_response_header_section_size

Description: The intermediary received a response to the request whose header section was considered too large.

説明:仲介者は、ヘッダーセクションが大きすぎると見なされているリクエストに対する回答を受け取りました。

Extra Parameters:

追加のパラメーター:

header-section-size: An Integer indicating how large the received headers were. Note that they might not be complete; i.e., the intermediary may have discarded or refused additional data.

ヘッダーセクションサイズ:受信したヘッダーの大きさを示す整数。それらは完全ではない可能性があることに注意してください。つまり、仲介者は追加データを破棄または拒否した可能性があります。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.20. HTTP Response Header Field Line Too Large
2.3.20. HTTP応答ヘッダーフィールドラインが大きすぎます

Name: http_response_header_size

名前:http_response_header_size

Description: The intermediary received a response to the request containing an individual header field line that was considered too large.

説明:仲介者は、大きすぎると見なされた個々のヘッダーフィールドラインを含むリクエストに対する応答を受け取りました。

Extra Parameters:

追加のパラメーター:

header-name: A String indicating the name of the header field that triggered the error.

ヘッダー名:エラーをトリガーしたヘッダーフィールドの名前を示す文字列。

header-size: An Integer indicating the size of the header field that triggered the error.

ヘッダーサイズ:エラーをトリガーしたヘッダーフィールドのサイズを示す整数。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.21. HTTP Response Body Too Large
2.3.21. HTTP応答ボディが大きすぎます

Name: http_response_body_size

名前:http_response_body_size

Description: The intermediary received a response to the request whose body was considered too large.

説明:仲介者は、体が大きすぎると見なされているリクエストに対する回答を受け取りました。

Extra Parameters:

追加のパラメーター:

body-size: An Integer indicating how large the received body was. Note that it may not have been complete; i.e., the intermediary may have discarded or refused additional data.

ボディサイズ:受け入れた体の大きさを示す整数。完全ではなかった可能性があることに注意してください。つまり、仲介者は追加データを破棄または拒否した可能性があります。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.22. HTTP Response Trailer Section Too Large
2.3.22. HTTP応答トレーラーセクションが大きすぎます

Name: http_response_trailer_section_size

名前:http_response_trailer_section_size

Description: The intermediary received a response to the request whose trailer section was considered too large.

説明:仲介者は、トレーラーセクションが大きすぎると見なされているリクエストに対する応答を受け取りました。

Extra Parameters:

追加のパラメーター:

trailer-section-size: An Integer indicating how large the received trailers were. Note that they might not be complete; i.e., the intermediary may have discarded or refused additional data.

トレーラーセクションサイズ:受信したトレーラーの大きさを示す整数。それらは完全ではない可能性があることに注意してください。つまり、仲介者は追加データを破棄または拒否した可能性があります。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.23. HTTP Response Trailer Field Line Too Large
2.3.23. HTTP応答トレーラーフィールドラインが大きすぎます

Name: http_response_trailer_size

名前:http_response_trailer_size

Description: The intermediary received a response to the request containing an individual trailer field line that was considered too large.

説明:仲介者は、大きすぎると考えられていた個々のトレーラーフィールドラインを含むリクエストへの応答を受け取りました。

Extra Parameters:

追加のパラメーター:

trailer-name: A String indicating the name of the trailer field that triggered the error.

トレーラー名:エラーをトリガーしたトレーラーフィールドの名前を示す文字列。

trailer-size: An Integer indicating the size of the trailer field that triggered the error.

トレーラーサイズ:エラーをトリガーしたトレーラーフィールドのサイズを示す整数。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.24. HTTP Response Transfer-Coding Error
2.3.24. HTTP応答転送コードエラー

Name: http_response_transfer_coding

名前:http_response_transfer_coding

Description: The intermediary encountered an error decoding the transfer coding of the response.

説明:仲介者は、応答の転送コーディングを解読するエラーが発生しました。

Extra Parameters:

追加のパラメーター:

coding: A Token containing the specific coding (from the "HTTP Transfer Coding Registry") that caused the error.

コーディング:エラーを引き起こした特定のコーディング(「HTTP転送コーディングレジストリ」から)を含むトークン。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.25. HTTP Response Content-Coding Error
2.3.25. HTTP応答コンテンツコーディングエラー

Name: http_response_content_coding

名前:http_response_content_coding

Description: The intermediary encountered an error decoding the content coding of the response.

説明:仲介者は、応答のコンテンツコーディングを解読するエラーが発生しました。

Extra Parameters:

追加のパラメーター:

coding: A Token containing the specific coding (from the "HTTP Content Coding Registry") that caused the error.

コーディング:エラーを引き起こした特定のコーディング(「HTTPコンテンツコーディングレジストリ」から)を含むトークン。

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.26. HTTP Response Timeout
2.3.26. HTTP応答タイムアウト

Name: http_response_timeout

名前:http_response_timeout

Description: The intermediary reached a configured time limit waiting for the complete response.

説明:仲介者は、完全な応答を待つ構成された時間制限に達しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 504

推奨されるHTTPステータスコード:504

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.27. HTTP Upgrade Failed
2.3.27. HTTPアップグレードは失敗しました

Name: http_upgrade_failed

名前:http_upgrade_failed

Description: The process of negotiating an upgrade of the HTTP version between the intermediary and the next hop failed.

説明:仲介者と次のホップの間のHTTPバージョンのアップグレードを交渉するプロセスは失敗しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.28. HTTP Protocol Error
2.3.28. HTTPプロトコルエラー

Name: http_protocol_error

名前:http_protocol_error

Description: The intermediary encountered an HTTP protocol error when communicating with the next hop. This error should only be used when a more specific one is not defined.

説明:次のホップと通信するときに、中間媒介はHTTPプロトコルエラーに遭遇しました。このエラーは、より具体的なエラーが定義されていない場合にのみ使用する必要があります。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: false

対応仲介業者によってのみ生成される:false

Reference: RFC 9209

参照:RFC 9209

2.3.29. Proxy Internal Response
2.3.29. プロキシ内部応答

Name: proxy_internal_response

名前:proxy_internal_response

Description: The intermediary generated the response itself without attempting to connect to the next hop.

説明:仲介者は、次のホップに接続しようとせずに応答自体を生成しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: The most appropriate status code for the response

推奨されるHTTPステータスコード:応答に最適なステータスコード

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.30. Proxy Internal Error
2.3.30. プロキシ内部エラー

Name: proxy_internal_error

名前:proxy_internal_error

Description: The intermediary encountered an internal error unrelated to the origin.

説明:仲介者は、原点とは関係のない内部エラーに遭遇しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 500

推奨されるHTTPステータスコード:500

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.31. Proxy Configuration Error
2.3.31. プロキシ構成エラー

Name: proxy_configuration_error

名前:proxy_configuration_error

Description: The intermediary encountered an error regarding its configuration.

説明:仲介者は、その構成に関するエラーに遭遇しました。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 500

推奨されるHTTPステータスコード:500

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.3.32. Proxy Loop Detected
2.3.32. プロキシループが検出されました

Name: proxy_loop_detected

名前:proxy_loop_detected

Description: The intermediary tried to forward the request to itself, or a loop has been detected using different means (e.g., [RFC8586]).

説明:仲介者はリクエストをそれ自体に転送しようとしました。または、異なる手段を使用してループが検出されました(例:[RFC8586])。

Extra Parameters: None

追加のパラメーター:なし

Recommended HTTP Status Code: 502

推奨されるHTTPステータスコード:502

Response Only Generated by Intermediaries: true

対応仲介業者によってのみ生成される:true

Reference: RFC 9209

参照:RFC 9209

2.4. Defining New Proxy Error Types
2.4. 新しいプロキシエラータイプの定義

New proxy error types can be defined by registering them in the "HTTP Proxy Error Types" registry.

新しいプロキシエラータイプは、「HTTPプロキシエラータイプ」レジストリに登録することで定義できます。

Registration requests are reviewed and approved by Expert Review, per [RFC8126], Section 4.5. A specification document is appreciated but not required.

登録要求は、[RFC8126]、セクション4.5ごとに、専門家のレビューによってレビューおよび承認されます。仕様ドキュメントは高く評価されていますが、必要ありません。

The expert(s) should consider the following factors when evaluating requests:

専門家は、リクエストを評価する際に次の要因を考慮する必要があります。

* Community feedback

* コミュニティフィードバック

* If the value is sufficiently well-defined

* 値が十分に明確に定義されている場合

* Generic types are preferred over vendor-specific, application-specific, or deployment-specific values. If a generic value cannot be agreed upon in the community, the type's name should be correspondingly specific (e.g., with a prefix that identifies the vendor, application, or deployment).

* ジェネリックタイプは、ベンダー固有、アプリケーション固有、または展開固有の値よりも好まれます。コミュニティで一般的な値を合意できない場合、タイプの名前はそれに応じて具体的でなければなりません(たとえば、ベンダー、アプリケーション、または展開を識別するプレフィックスを使用)。

* Extra parameters should not conflict with registered Proxy-Status parameters.

* 追加のパラメーターは、登録されたプロキシステータスパラメーターと競合しないでください。

Registration requests should use the following template:

登録リクエストは、次のテンプレートを使用する必要があります。

Name: [a name for the proxy error type that is of type Token]

名前:[トークンのタイプのプロキシエラータイプの名前]

Description: [a description of the conditions that generate the proxy error type]

説明:[プロキシエラータイプを生成する条件の説明]

Extra Parameters: [zero or more optional parameters, along with their allowable Structured Type(s)]

追加のパラメーター:[許容される構造化されたタイプとともに、ゼロ以上のオプションパラメーター]

Recommended HTTP Status Code: [the appropriate HTTP status code for this entry]

推奨されるHTTPステータスコード:[このエントリの適切なHTTPステータスコード]

Response Only Generated by Intermediaries: ['true' or 'false']

仲介者によってのみ生成される応答:['true'または 'false']

Reference: [to a specification defining this error type; optional]

参照:[このエラータイプを定義する仕様。オプション]

Notes: [optional]

注:[オプション]

If the proxy error type might occur in responses that are not generated by the intermediary -- for example, when an error is detected as the response is streamed from a forward connection, causing a Proxy-Status trailer field to be appended -- the 'Response only generated by intermediaries' should be 'false'. If the proxy error type only occurs in responses that are generated by the intermediary, it should be 'true'.

仲介者によって生成されない応答でプロキシエラータイプが発生する可能性がある場合 - たとえば、応答が前方接続からストリーミングされたときにエラーが検出され、プロキシステータストレーラーフィールドが追加されます - '仲介者によってのみ生成される応答は、「偽」でなければなりません。プロキシエラータイプが、仲介者によって生成される応答でのみ発生する場合、「真」でなければなりません。

See the registry at <https://www.iana.org/assignments/http-proxy-status> for details on where to send registration requests.

登録リクエストの送信先の詳細については、<https://www.iana.org/assignments/http-proxy-status>のレジストリを参照してください。

3. IANA Considerations
3. IANAの考慮事項

IANA has created the "HTTP Proxy-Status Parameters" registry and the "HTTP Proxy Error Types" registry at <https://www.iana.org/assignments/http-proxy-status> and has populated them with the types defined in Sections 2.1 and 2.3 respectively; see Sections 2.2 and 2.4 for their associated procedures.

IANAは「HTTP Proxy-Statusパラメーター」レジストリと「HTTPプロキシエラータイプ」レジストリを<https://www.iana.org/assignments/http-proxy-status>で作成し、で定義されたタイプを作成しました。それぞれセクション2.1と2.3。関連する手順については、セクション2.2および2.4を参照してください。

Additionally, the following entry has been added to the "Hypertext Transfer Protocol (HTTP) Field Name Registry":

さらに、「HyperText Transfer Protocol(HTTP)フィールド名レジストリ」に次のエントリが追加されました。

Field name: Proxy-Status Status: permanent Specification document(s): RFC 9209 Comments:

フィールド名:プロキシステータスステータス:永続的な仕様文書:RFC 9209コメント:

4. Security Considerations
4. セキュリティ上の考慮事項

One of the primary security concerns when using Proxy-Status is leaking information that might aid an attacker. For example, information about the intermediary's configuration and backend topology can be exposed, allowing attackers to directly target backend services that are not prepared for high traffic volume or malformed inputs. Some information might only be suitable to reveal to authorized parties.

プロキシステータスを使用する場合の主要なセキュリティの懸念の1つは、攻撃者を支援する可能性のある情報を漏らすことです。たとえば、仲介者の構成とバックエンドトポロジーに関する情報を公開することができ、攻撃者は、トラフィックの量や不正な入力のために準備されていないバックエンドサービスを直接ターゲットにすることができます。一部の情報は、認可された当事者に明らかにするのにのみ適している場合があります。

As a result, care needs to be taken when deciding to generate a Proxy-Status field and what information to include in it. Note that intermediaries are not required to generate a Proxy-Status field in any response and can conditionally generate them based upon request attributes (e.g., authentication tokens, IP address).

その結果、プロキシステータスフィールドとそれに含まれる情報を生成することを決定する際には、注意が必要です。仲介者は、任意の応答でプロキシステータスフィールドを生成する必要はなく、要求属性(認証トークン、IPアドレスなど)に基づいて条件付きでそれらを生成できることに注意してください。

Likewise, generation of all parameters is optional, as is the generation of the field itself. Also, the field's content is not verified; an intermediary can claim certain actions (e.g., sending a request over an encrypted channel) but fail to actually do that.

同様に、すべてのパラメーターの生成はオプションであり、フィールド自体の生成も同様です。また、フィールドのコンテンツは検証されていません。仲介者は特定のアクションを請求することができます(例:暗号化されたチャネルを介してリクエストを送信します)が、実際にはそれを行うことができません。

5. References
5. 参考文献
5.1. Normative References
5.1. 引用文献

[HTTP] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke, Ed., "HTTP Semantics", STD 97, RFC 9110, DOI 10.17487/RFC9110, June 2022, <https://www.rfc-editor.org/info/rfc9110>.

[HTTP] Fielding、R.、Ed。、Nottingham、M.、Ed。、およびJ. Reschke、ed。、 "HTTP Semantics"、Std 97、RFC 9110、DOI 10.17487/RFC9110、2022年6月、<https://www.rfc-editor.org/info/rfc9110>。

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-editor.org/info/rfc2119>.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、DOI 10.17487/RFC2119、1997年3月、<https://www.rfc-editor.org/info/RFC2119>。

[RFC7301] Friedl, S., Popov, A., Langley, A., and E. Stephan, "Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension", RFC 7301, DOI 10.17487/RFC7301, July 2014, <https://www.rfc-editor.org/info/rfc7301>.

[RFC7301] Friedl、S.、Popov、A.、Langley、A。、およびE. Stephan、「輸送層セキュリティ(TLS)アプリケーション層プロトコル交渉拡張」、RFC 7301、DOI 10.17487/RFC7301、2014年7月、<https://www.rfc-editor.org/info/rfc7301>。

[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, June 2017, <https://www.rfc-editor.org/info/rfc8126>.

[RFC8126] Cotton、M.、Leiba、B。、およびT. Narten、「RFCSでIANA考慮事項セクションを書くためのガイドライン」、BCP 26、RFC 8126、DOI 10.17487/RFC8126、2017年6月、<https:// wwwwwwwwwwwwwwwwwwww.rfc-editor.org/info/rfc8126>。

[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, <https://www.rfc-editor.org/info/rfc8174>.

[RFC8174] Leiba、B。、「RFC 2119キーワードの大文字と小文字のあいまいさ」、BCP 14、RFC 8174、DOI 10.17487/RFC8174、2017年5月、<https://www.rfc-editor.org/info/RFC8174>。

[RFC8499] Hoffman, P., Sullivan, A., and K. Fujiwara, "DNS Terminology", BCP 219, RFC 8499, DOI 10.17487/RFC8499, January 2019, <https://www.rfc-editor.org/info/rfc8499>.

[RFC8499] Hoffman、P.、Sullivan、A。、およびK. Fujiwara、「DNS用語」、BCP 219、RFC 8499、DOI 10.17487/RFC8499、2019年1月、<https://www.rfc-editor.org/情報/RFC8499>。

[RFC8914] Kumari, W., Hunt, E., Arends, R., Hardaker, W., and D. Lawrence, "Extended DNS Errors", RFC 8914, DOI 10.17487/RFC8914, October 2020, <https://www.rfc-editor.org/info/rfc8914>.

[RFC8914] Kumari、W.、Hunt、E.、Arends、R.、Hardaker、W。、およびD. Lawrence、「拡張DNSエラー」、RFC 8914、DOI 10.17487/RFC8914、2020年10月、<https:///www.rfc-editor.org/info/rfc8914>。

[STRUCTURED-FIELDS] Nottingham, M. and P-H. Kamp, "Structured Field Values for HTTP", RFC 8941, DOI 10.17487/RFC8941, March 2021, <https://www.rfc-editor.org/info/rfc8941>.

[構造化場]ノッティンガム、M。およびP-H。Kamp、「HTTPの構造化されたフィールド値」、RFC 8941、DOI 10.17487/RFC8941、2021年3月、<https://www.rfc-editor.org/info/rfc8941>。

[TLS] Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, <https://www.rfc-editor.org/info/rfc8446>.

[TLS] Rescorla、E。、「輸送層セキュリティ(TLS)プロトコルバージョン1.3」、RFC 8446、DOI 10.17487/RFC8446、2018年8月、<https://www.rfc-editor.org/info/rfc846>

5.2. Informative References
5.2. 参考引用

[RFC8586] Ludin, S., Nottingham, M., and N. Sullivan, "Loop Detection in Content Delivery Networks (CDNs)", RFC 8586, DOI 10.17487/RFC8586, April 2019, <https://www.rfc-editor.org/info/rfc8586>.

[RFC8586] Ludin、S.、Nottingham、M.、およびN. Sullivan、「コンテンツ配信ネットワーク(CDNS)のループ検出」、RFC 8586、DOI 10.17487/RFC8586、2019年4月、<https://www.rfc-editor.org/info/rfc8586>。

Authors' Addresses

著者のアドレス

Mark Nottingham Fastly Prahran Australia Email: mnot@mnot.net URI: https://www.mnot.net/

マークノッティンガム急速プラランオーストラリアメールメール:mnot@mnot.net uri:https://www.mnot.net/

Piotr Sikora Google Email: piotrsikora@google.com

Piotr Sikora Googleメール:piotrsikora@google.com