У меня есть этот URL:
https://example.com/admin/catalog/product/view/id/45533/?___store=en_us&sendAttributionID=email_automation_5ffa6c5967af4527508858fb&ContactID=5f9d9eac1215fsdfsdfasdffsdfsdf04ff6c98af
Мне нужно перенаправить его с помощью nginx на:
https://example.com/catalog/product/view/id/45533/?___store=el_gr&sendAttributionID=email_automation_5ffa6c5967af4527508858fb&ContactID=5f9d9eac1215fsdfsdfasdffsdfsdf04ff6c98af
На самом деле мне нужно из первой ссылки: Удалить
admin
и заменить:
en_us
с:
el_gr
На данный момент у меня есть такое регулярное выражение:
rewrite ^/admin/(.*)$ https://example.com/$1 permanent;
который удаляетадминслово. Но я не могу понять, как заменить
en_us
После помощи с UML я сейчас занимаюсь:
rewrite ^/admin/(.*?)en_us(.*?)$ https://example.com/$1el_gr$2 permanent;
который в Online Regex работает, но не в nginx
Помогите, пожалуйста.
решение1
РЕДАКТИРОВАНО
Сначала я подумал, что поможет простое изменение регулярного выражения, например:
rewrite ^/admin/(.*?)___store=en_us(.*)$ https://example.com/$1___store=el_gr$2 permanent;
Однако, поскольку соответствие перезаписи работает только с частью "имя файла" (до ?), это не сработает. Требуется какая-то другая техника.