Problema: Las barras dobles de una solicitud pueden hacer que la solicitud no se resuelva.
Cualquier solicitud que contenga dos barras (o más) consecutivas puede generar un error 404. Por ejemplo, /hello//world/
. El problema en este ejemplo es el “//
” entre hello
y world
.
Solución: Filtrar por barras dobles
Aplica una configuración a tu entrada de Istio para filtrar por barras dobles en las solicitudes y reemplazarlas.
- Crea un archivo de configuración nuevo llamado
apigee-merge-slash-filter.yaml
. - Pegue el siguiente contenido en el archivo:
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
- Aplica la configuración mediante el siguiente comando:
kubectl apply -f apigee-merge-slash-filter.yaml