문제: 요청의 이중 슬래시로 인해 요청이 확인되지 않을 수 있음
연속 슬래시가 두 개 이상 포함된 요청으로 인해 404 오류가 발생할 수 있습니다. 예를 들어 /hello//world/
입니다. 이 예시의 문제는 hello
와 world
사이의 '//
'입니다.
솔루션: 이중 슬래시 필터링
요청의 이중 슬래시를 필터링하여 교체하기 위해 Istio 인그레스에 구성을 적용합니다.
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