Файл .htaccess с использованием 2 разных правил перезаписи - PullRequest
0 голосов
/ 10 августа 2011

У меня есть файл .htaccess, в котором есть правило перезаписи, которое работает следующим образом:

RewriteRule ^solicitorsin([^/]+)/all/([0-9]+)$ /search/searchresults.php?county=$1&page=$2 [L]

Что я хочу сделать, так это продолжать использовать его, если страницапеременная 2 или выше, но если она равна 1, я хочу 301 перенаправить на отдельный URL (тот же сайт), скажем http://www.domain.com/solicitorsinCOUNTY/

Проблема заключается в том, что если я пытаюсь сделать это с помощью перенаправления 301 или переписатьправило, оно все еще выполняет вышеупомянутое правило перезаписи, так что я получаю http://www.domain.com/solicitorsinCOUNTY/?county=COUNTY&page=1

Я мало что сделал с .htaccess раньше, поэтому я даже не уверен, если это возможно, может кто-нибудь помочь, пожалуйста?Это будет высоко ценится.

1 Ответ

0 голосов
/ 10 августа 2011

Если вы используете правило перезаписи, поместите правило для page=1 над другим правилом и убедитесь, что у вас есть флаг [L].

В качестве альтернативы, вы можете использовать RewriteCond для предотвращенияправило запускается на определенных URL-адресах, например:

RewriteCond %{REQUEST_URI} !^solicitorsin([^/]+)/all/1$
RewriteRule ^solicitorsin([^/]+)/all/([0-9]+)$ /search/searchresults.php?county=$1&page=$2 [L]
...