如何使用.htaccess进行多次重写?

Moo*_*oon 5 .htaccess mod-rewrite

我正在尝试使用Drupal构建一个多语言网站.

我喜欢以下网址格式

http://domain/[language]/[node id]

所以我将以下规则添加到.htaccess中以进行测试

RewriteRule ^jpn/[0-9]$ jpn.html

问题是该规则被以下规则覆盖

RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

我如何有多个重写规则?

fx_*_*fx_ 10

您的第二个RewriteRule具有该L Flag集合,这意味着如果规则匹配,则不会处理其他规则.

如果您希望第一条规则也停止进一步处理,请同时添加L标志.

RewriteRule ^jpn/[0-9]$ jpn.html [L]
Run Code Online (Sandbox Code Playgroud)

还要确保你的第二个规则列在最后,因为它匹配所有(.*)因此,Apache将永远不会看到任何其他规则.

已编辑:L标记网址