如何在.htaccess中为mod_rewrite应用规则后阻止第二次调用

时间:2010-12-21 16:02:36

标签: .htaccess mod-rewrite

我有以下.htaccess规则:

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

我需要添加另一个重定向,它应该以这种方式工作:

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

因此请求不会传递给server2,而是在适当的位置提供。

据我了解,如果我添加此行,则第二次调用.htaccess,我将被重定向到server2.com/index.php。

我希望,我可以使用某种开关来阻止第二次mod_rewrite调用,或者我应该使用RewriteCond(例如here)?

1 个答案:

答案 0 :(得分:2)

排除第一条规则中第二条规则的模式:

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