Как предотвратить второй вызов после применения правила для mod_rewrite в .htaccess - PullRequest
0 голосов
/ 21 декабря 2010

У меня есть следующее правило .htaccess:

RewriteEngine on
RewriteRule ^(.*) http://www.server2.com/index.php?action=$1

Мне нужно добавить еще одно перенаправление, которое должно работать следующим образом:

RewriteRule ^app/(.*) index.php [L]

, чтобы запрос не передавался на сервер2,но служил на месте.

Как я понимаю, если я добавлю эту строку, .htaccess вызывается во второй раз, и я перенаправлен на server2.com/index.php.

Надеюсь, тамэто какой-то тип переключателя, который я могу использовать для предотвращения второго вызова mod_rewrite или я должен вместо этого использовать RewriteCond (например, как здесь )?

1 Ответ

2 голосов
/ 21 декабря 2010

Исключить шаблон второго правила в вашем первом правиле:

RewriteCond $1 !^app/(.*)
RewriteRule ^(.*) http://www.server2.example/index.php?action=$1
RewriteRule ^app/(.*) index.php [L]
...