Я должен переписать URL, которые выглядят так:
/foo/bar/xyz/
до /abc/
Но я также должен переписать несколько разных URL-адресов для одного и того же места назначения, например так:
/foo/xyz/
до /abc/
Я создал карту, которая выглядит следующим образом:
xyz/ /abc/
И такие правила:
RewriteMap rewrites txt:/path/to/rewritemap.txt
RewriteCond %{REQUEST_URI} ^/foo/.*
RewriteRule ^/foo/(.*) ${rewrites:$1} [R=301,L]
RewriteCond %{REQUEST_URI} ^/foo/bar/.*
RewriteRule ^/foo/bar/(.*) ${rewrites:$1} [R=301,L]
Однако второй (foo/bar
) работает, только если я закомментирую первый (только foo
). Понятия не имею, что я здесь делаю не так.
(Единственное решение, которое я могу придумать, - это удвоить количество совпадающих URL в моем файле карты, но это неэффективно)