Tengo esta URL:
https://example.com/admin/catalog/product/view/id/45533/?___store=en_us&sendAttributionID=email_automation_5ffa6c5967af4527508858fb&ContactID=5f9d9eac1215fsdfsdfasdffsdfsdf04ff6c98af
Necesito redirigirlo con nginx a:
https://example.com/catalog/product/view/id/45533/?___store=el_gr&sendAttributionID=email_automation_5ffa6c5967af4527508858fb&ContactID=5f9d9eac1215fsdfsdfasdffsdfsdf04ff6c98af
De hecho necesito desde el primer enlace: Para eliminar
admin
y reemplazar:
en_us
con:
el_gr
Tengo esta expresión regular por ahora:
rewrite ^/admin/(.*)$ https://example.com/$1 permanent;
que elimina eladministraciónpalabra. Pero no puedo entender cómo reemplazar el
en_us
Después de la ayuda de UML ahora estoy en:
rewrite ^/admin/(.*?)en_us(.*?)$ https://example.com/$1el_gr$2 permanent;
que en Online Regex funciona pero no en nginx
¿Alguna ayuda por favor?
Respuesta1
EDITADO
Primero pensé que ayudaría simplemente cambiar la expresión regular, de esta manera:
rewrite ^/admin/(.*?)___store=en_us(.*)$ https://example.com/$1___store=el_gr$2 permanent;
Sin embargo, como la coincidencia de reescritura solo funciona en la parte "nombre de archivo" (¿hasta ?), no funcionará. Se requiere alguna otra técnica.