我有一个重写规则(在 Apache htaccess 文件中),它试图从一次捕获($1)中使用两次反向引用:
RewriteRule ^([A-Za-z0-9_-]+)/?$ $1.php?nav=$1
查询字符串似乎是空的,比如
example.com/new
被重写为
example.com/new.php?nav=
我想要的是
example.com/new.php?nav=new
我的问题:我可以在表达式中引用两次 $1 吗?
更新:
mod_rewrite 上的 Apache文档表明您可以在重写规则的替换部分中多次引用捕获。但是,在尝试了几天后,我无法使其工作。我确实让我的规则通过了在线正则表达式测试器,但不在我的网站上。最后我重新设计了我的菜单系统,以便我可以使用更简单的重写规则。