요청에서 이중 슬래시 삭제

문제: 요청의 이중 슬래시로 인해 요청이 확인되지 않을 수 있음

연속 슬래시가 두 개 이상 포함된 요청으로 인해 404 오류가 발생할 수 있습니다. 예를 들어 /hello//world/입니다. 이 예시의 문제는 helloworld 사이의 '//'입니다.

솔루션: 이중 슬래시 필터링

요청의 이중 슬래시를 필터링하여 교체하기 위해 Istio 인그레스에 구성을 적용합니다.

  1. apigee-merge-slash-filter.yaml이라는 새 구성 파일을 만듭니다.
  2. 다음 콘텐츠를 파일에 붙여넣습니다.
    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
  3. 다음 명령어를 사용하여 구성을 적용합니다.
    kubectl apply -f apigee-merge-slash-filter.yaml