Me gustaría redirigir:
something.com/search?keywords='value'
a
something.com/search?q='value'
Aquí está mi configuración de Nginx:
location ~ /search {
if ($args ~* "keywords=(.*)") {
rewrite ^.*$ /search?q=$arg_keywords permanent;
}
}
Pero el q
parámetro está vacío en la redirección.
¿Lo que está mal?
Respuesta1
Pero el parámetro q está vacío en la redirección.
No veo ese problema. Cuando pruebo la configuración tal como está escrita, se crea un bucle de redirección porque el original keywords='value'
se agrega al URI reescrito.
Puede evitar rewrite
incluir parámetros originales agregando a ?
al URI reescrito.
Por ejemplo:
rewrite ^ /search?q=$arg_keywords? permanent;
Vereste documentopara detalles.