Готово! Чтобы прервать цикл нужно вначале кода поставить условие
16. zapatronen - 14 Августа, 2017 - 19:01:41 - перейти к сообщению
которая пустая только при первом проходе по списку правил.
А без нее получалось, что последний RewriteRule меняет запрос на /product.php?article=$1&name=$2 и при повторном проходе срабатывает редирект на /%1/%2.html.
Рабочий вид кода будет следующий:
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- RewriteCond %{ENV:REDIRECT_STATUS} ^$
- RewriteCond %{QUERY_STRING} ^article=([^&]*)&name=([^&]*)
- RewriteRule ^product\.php$ /%1/%2.html? [R=301,L]
- RewriteRule ^([^/]*)/([^/]*)\.html$ /product.php?article=$1&name=$2 [L]