2016-03-01 3 views
1

Я пытаюсь создать перенаправление apache2 .htaccess. Я хочу, чтобы перенаправить это:Apache2 перенаправление перенаправления htaccess слишком много перенаправления

http://www.mywebsite.com/category/books в http://www.mywebsite.com/category/books/?fwp_categories=books

Я пытался это сделать, но я получаю «слишком много переадресаций» Ошибка:

RewriteRule ^category/(.*) http://www.mywebsite.com/category/$1?fwp_categories=$1 [R=301,L] 

Что я делать не так?

спасибо.

ответ

1

Вам нужно RewriteCond перед этим правилом, чтобы предотвратить добавление параметра запроса, если он уже есть:

RewriteCond %{QUERY_STRING} !(^|&)fwp_categories= [NC] 
RewriteRule ^(category)/(.*?)/?$ /$1/$2?fwp_categories=$2 [R=301,L,NC,NE] 

Убедитесь, чтобы очистить кэш браузера перед тестированием этого правила.

+0

Mmm OK, но если я перейду на http://www.mywebsite.com/category/books/ с окончательной косой чертой, вы правы перенаправляете меня на http://www.mywebsite.com/category/books/? fwp_categories = books% 2F, а% 2F бросает мне ошибку в моем WP. – walolinux

+1

Отлично, теперь его работа! – walolinux

Смежные вопросы