Apache fuerza una barra al final a 301
Usamos Apache (en Runcloud) detrás de Cloudflare para redirigir enlaces. Se hace con .htaccess, lo más simple posible.
Redirect 301 /advertiser/google https://google.com
Por alguna razón, Apache fuerza una barra al final de cada redireccionamiento, y algunas URL, es decir, aquellas que no deben contener una barra al final, no funcionarán.
¿Cómo configuro Apache para redirigir exactamente a la URL en .htaccess?
Respuestas
Tenga en cuenta: un redireccionamiento HTTP 301 es "Moved Permanently" y, como tal, será almacenado en caché por ambos navegadores web, CDN y servidores proxy y después de haber cambiado o eliminado la Redirect
directiva, aún puede observar los efectos de la configuración anterior. Es posible que deba probar desde una nueva ventana del navegador anónimo y / o borrar sus cachés después de cada cambio.
Segundo: con la Redirect
información de cualquier ruta más allá del patrón en la ruta de la URL que está redirigiendo, se agregará a la URL de destino.
En otras palabras: con una configuración, Apache debería redirigir Redirect 301 /advertiser/google https://google.com
una solicitud con una ruta más larga http://example.com/advertiser/google/more
a https://google.com/more
.
Cuando una solicitud de http://example.com/advertiser/google
se redirige a https://google.com/
(con la barra diagonal agregada), la razón más probable es que algo en su configuración primero agrega esa barra diagonal y convierte la solicitud antes de que se aplique la redirección.
Puede omitir los efectos de almacenamiento en caché tanto de Cloud Flare CDN como de su propio navegador web y probar su configuración realizando solicitudes directamente a su servidor web con un cliente de línea de comandos como, por ejemplo:
curl -v -H "Host: example.com" http://<real-IP-address-of-your-webserver>/advertiser/google
y comparar eso con
curl -v http://example.com/advertiser/google