リクエストからダブル スラッシュを削除する
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
問題: リクエストにダブル スラッシュを使用すると、リクエストが解決されない
リクエストには 2 つ以上の連続したスラッシュが含まれていると、404 エラーが発生する可能性がありますたとえば、/hello//world/
のような場合です。この例では、hello
と world
の間の「//
」が問題となります。
解決策: ダブル スラッシュを除外する
Istio Ingress に構成を適用して、リクエスト内のダブル スラッシュをフィルタし、置換します。
apigee-merge-slash-filter.yaml
という名前の新しい構成ファイルを作成します。
- このファイルに次の内容を貼り付けます。
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
name: apigee-merge-slashes
namespace: istio-system
spec:
workloadSelector:
labels:
app: istio-ingressgateway
configPatches:
- applyTo: NETWORK_FILTER # http connection manager is a filter in Envoy
match:
context: GATEWAY
listener:
filterChain:
filter:
name: "envoy.http_connection_manager"
patch:
operation: MERGE
value:
typed_config:
"@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager"
merge_slashes: true
- 次のコマンドを使用して構成を適用します。
kubectl apply -f apigee-merge-slash-filter.yaml
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-06-23 UTC。
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Hard to understand"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Incorrect information or sample code"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Missing the information/samples I need"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻訳に関する問題"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"その他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"わかりやすい"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"問題の解決に役立った"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"その他"
}]