Что вы подразумеваете под не работает? Второй URL вообще перенаправлен? Если вы работаете на платформе Linux, вы можете попробовать curl -L --head <url>
, тогда вы сможете увидеть, происходит ли перенаправление или перенаправление (или перенаправление l oop). На самом деле curl
- лучший способ проверить ваши правила, потому что ваш кеш браузера может подшутить над вами.
Обратите внимание, что $1
- первая захваченная группа из вашего регулярного выражения. Поэтому вы должны добавить хост, который вы хотите перенаправить на ie:
RewriteRule ^en/(.*)/1348-duracell-32-aaa-pack.html$ https://example.com/$1/3016-duracell-32-aaa-pack.html [R=301,NC,L]
В противном случае браузер, скорее всего, будет продолжать использовать текущее имя хоста. Если вы не предоставите полный URL-адрес, он должен восполнить пропущенные биты.
Но если все, что вам нужно, это удалить /en/
из URL-адреса, тогда вы могли бы написать более простой и понятный править.