<ph type="x-smartling-placeholder"></ph>
現在、Apigee Edge のドキュメントが表示されています。
Apigee X のドキュメント。 詳細
クライアント / サーバー通信では、次の場合、サーバーは HTTP ステータス コード 405
Method Not Allowed を返します。
<ph type="x-smartling-placeholder"></ph>
クライアントによって提示された HTTP リクエスト メソッドがサーバーで認識されている
ターゲット リソースではサポートされていません。Apigee Edge でも同様に、バックエンド サーバーを
HTTP ステータス コード 405 Method Not Allowed. を返す
Apigee Edge は、バックエンド サーバーが 405 Method Not Allowed レスポンスを送信することを想定している
仕様に従って、Allow ヘッダーで許可されるメソッドのリスト
<ph type="x-smartling-placeholder"></ph>
RFC 7231、セクション 6.5.5: 405 Method Not Allowed をご覧ください。
Allow ヘッダーは次の形式で送信する必要があります。
Allow: HTTP_METHODS
たとえば、バックエンド サーバーが GET、POST、および
HEAD メソッドを使う場合は、Allow ヘッダーにそれらが含まれるようにする必要があります。
次のとおりです。
Allow: GET, POST, HEAD
バックエンド サーバーが Allow ヘッダーを HTTP ステータス コードとともに送信しない場合
405 Method Not Allowed, の場合、Apigee は HTTP ステータス コード 502 Bad
Gateway とエラーコード protocol.http.Response405WithoutAllowHeader を返します。
クライアント アプリケーションで使用できます。このエラーへの対処方法として推奨される解決策は次のとおりです。
バックエンド サーバーを修正して仕様に準拠させる
<ph type="x-smartling-placeholder"></ph>
RFC 7231、セクション 6.5.5: 405 Method Not Allowed を参照するか、障害処理を使用して
HTTP ステータス コード 405 Method Not Allowed を返します。
トラブルシューティング ハンドブックに記載されている Allow ヘッダー
502 Bad Gateway - Response 405 without Allow。
ただし、例外的にバックエンドを修正したり、 API プロキシを使用して、この問題にすぐに対処する必要があります。
このような場合は、405 プロパティに ignore allow ヘッダーを設定します。
HTTP.ignore.allow_header.for.405
一時的に Message Processor レベルに維持します。このプロパティを true に設定すると、Apigee は
クライアント アプリケーションに 502 Bad Gateway レスポンスを返すことは、
バックエンド サーバーが HTTP ステータス コード 405 Method Not Allowed を
Allow ヘッダー。
Allow ヘッダー付きの HTTP ステータス コード 405 Method
Not Allowed を送信するようにバックエンド サーバーを修正する準備ができたら、プロパティを元に戻すことができます。
HTTP.ignore.allow_header.for.405 をデフォルト値の false に変更します。
始める前に
このドキュメントの手順を使用する前に、次のトピックを理解しておいてください。
- ハンドブックを読む - <ph type="x-smartling-placeholder"></ph> 502 Bad Gateway - response 405 without Allow ヘッダー
- プライベート クラウド上の Edge のプロパティの構成についてよく理解していない場合は、 Edge の構成方法
Message Processor で 405 プロパティの ignore allow ヘッダーを true に構成する
Apigee Edge では、プロパティ HTTP.ignore.allow_header.for.405 は次のように設定されています。
デフォルトは false です。これにより、Apigee Edge はエラーコード protocol.http.Response405WithoutAllowHeader の 502 Bad
Gateway を
バックエンド サーバーが Allow ヘッダーなしで HTTP ステータス コード 405 Method Not
Allowed を送信した場合。Apigee Edge が侵入しないようにするには、
502 Bad Gateway をクライアント アプリケーションに送信する場合は、次の値を設定する必要があります。
メッセージのプロパティ HTTP.ignore.allow_header.for.405 から true
決済代行業者。
このセクションでは、プロパティの設定方法について説明します。
HTTP.ignore.allow_header.for.405発true着
Message Processor で、次の構文に従ってトークンを使用
<ph type="x-smartling-placeholder"></ph>
Edge の構成方法をご覧ください。
-
Message Processor マシンで、次のファイルをエディタで開きます。オンになっていない場合 作成します。
/opt/apigee/customer/application/message-processor.properties
たとえば、 vi で、次のコマンドを入力します。
vi /opt/apigee/customer/application/message-processor.properties
- プロパティ ファイルに次の形式の行を追加します。
conf_http_HTTP.ignore.allow_header.for.405=true
- 変更を保存します。
- 以下に示すように、プロパティ ファイルの所有者が
apigeeユーザーであることを確認します。chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- 次のように Message Processor を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 複数の Message Processor がある場合は、すべての Message Processor に対して上記の手順を繰り返します 決済代行業者。
Message Processor で 405 プロパティの ignore allow ヘッダーが true に設定されていることを確認する
このセクションでは、プロパティが
HTTP.ignore.allow_header.for.405 を true に更新しました
について学びました
トークン conf_http_HTTP.ignore.allow_header.for.405 を使用して更新しても、
Message Processor のプロパティ値を確認するには、実際のプロパティが
HTTP.ignore.allow_header.for.405 が true に設定されました。
- Message Processor マシンで、次のプロパティを検索します。
HTTP.ignore.allow_header.for.405(/opt/apigee/edge-message-processor/confディレクトリに移動して、 以下に示すように、trueに設定されています。grep -ri "HTTP.ignore.allow_header.for.405" /opt/apigee/edge-message-processor/conf
- Message Processor でプロパティが正常に更新された場合、上記のコマンドは
プロパティ
HTTP.ignore.allow_header.for.405の値が次のように表示されます。 次のように、http.propertiesファイル内のtrueを追加します。/opt/apigee/edge-message-processor/conf/http.properties:HTTP.ignore.allow_header.for.405=true
- プロパティ
HTTP.ignore.allow_header.for.405の値が次のように表示されている場合は、falseに記載されているすべての手順を完了していることを確認します。 Google Cloud コンソールで 405 プロパティの ignore allow ヘッダーを true に構成する Message Processor を正しく使用する必要があります。途中のステップを抜かした場合は、もう一度すべてのステップをやり直してください。 確認します。 - それでもプロパティを変更できない場合
HTTP.ignore.allow_header.for.405後に Apigee Edge サポートに連絡してください。
Message Processor で 405 プロパティの ignore allow ヘッダーを false に構成する
このセクションでは、プロパティの設定方法について説明します。
HTTP.ignore.allow_header.for.405 をデフォルト値 false に戻します
Message Processor 上で、次の構文に従ってトークンを使用します。
Edge の構成方法。
- プロパティ
HTTP.ignore.allow_header.for.405が次のように変更されているかどうかを確認します。true。この宿泊施設を検索して/opt/apigee/edge-message-processor/confディレクトリ内のファイルを確認し、 値を使用します。grep -ri "HTTP.ignore.allow_header.for.405" /opt/apigee/edge-message-processor/conf
- Message Processor でプロパティが
trueに設定されている場合、上記のコマンドは プロパティHTTP.ignore.allow_header.for.405の値が次のように表示されます。 次のように、http.propertiesファイル内のtrue。/opt/apigee/edge-message-processor/conf/http.properties:HTTP.ignore.allow_header.for.405=true
- 上記のコマンドでプロパティ
HTTP.ignore.allow_header.for.405が示されている場合、 がfalse(デフォルト値)に設定されている場合は、何もする必要はありません。つまり 以降のステップはスキップします - プロパティ
HTTP.ignore.allow_header.for.405がtrueに設定されている場合: 次の手順を実行して、デフォルト値のfalseに戻します。 Message Processor マシンで、次のファイルをエディタで開きます。
/opt/apigee/customer/application/message-processor.properties
たとえば、 vi で、次のコマンドを入力します。
vi /opt/apigee/customer/application/message-processor.properties
- プロパティ ファイルから次の行を削除します。
conf_http_HTTP.ignore.allow_header.for.405=true
- 変更を保存します。
- 以下に示すように、プロパティ ファイルの所有者が
apigeeユーザーであることを確認します。chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- 次のように Message Processor を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- 複数の Message Processor がある場合は、すべての Message Processor に対して上記の手順を繰り返します 決済代行業者。
Message Processor で 405 プロパティの ignore allow ヘッダーが false に設定されていることを確認する
このセクションでは、プロパティが
HTTP.ignore.allow_header.for.405 を false に更新しました
について学びました
トークンや
conf_http_HTTP.ignore.allow_header.for.405: メッセージの値を更新します。
決済代行業者は、実際のプロパティ HTTP.ignore.allow_header.for.405 が
false に設定されました。
- Message Processor マシンで、次のプロパティを検索します。
/opt/apigee/edge-message- processor/confディレクトリ内のHTTP.ignore.allow_header.for.405を実行し、次に示すようにfalseに設定されているかどうかを確認します。 下にあります。grep -ri "HTTP.ignore.allow_header.for.405" /opt/apigee/edge-message-processor/conf
- Message Processor でプロパティが正常に更新された場合、上記のコマンドは
プロパティ
HTTP.ignore.allow_header.for.405の値が次のように表示されます。 次のように、http.propertiesファイル内のfalseを追加します。/opt/apigee/edge-message-processor/conf/http.properties:HTTP.ignore.allow_header.for.405=false
- プロパティ
HTTP.ignore.allow_header.for.405の値が次のように表示されている場合は、trueの手順をすべて完了していることを確認します。 <ph type="x-smartling-placeholder"></ph> Message Processor で 405 プロパティの ignore allow ヘッダーを false に構成する 確認します。途中を抜けた場合は、すべての手順を正しく繰り返します。 - それでもプロパティを変更できない場合
HTTP.ignore.allow_header.for.405後に Apigee Edge サポートに連絡してください。