网址重写 nginx



>我正在尝试在nginx中完成重写,但它不起作用。

我想做的是这样的:

www.website.com/backstage/somepage.php?language=Dutch

应该成为

www.website.com/nl/backstage/somepage.php

我已将此行添加到nginx配置中(但它没有执行任何操作):

rewrite ^/nl/backstage/(.*).html$ /./backstage/$1.php?language=Dutch last;

我希望有人可以帮助:)谢谢。

哼,我不明白你的重写指令,它没有多大意义。 检查文档:http://wiki.nginx.org/HttpRewriteModule 特别是

rewrite regex replacement

所以你必须找到一个匹配/backstage/somepage.php?language=Dutch替换将是/nl/后台/某个页面.php .但是,当您尝试根据参数重写时,这很棘手。所以单独"重写"是行不通的,你必须使用"如果"。

这应该有效:

if ($args ~ language=Dutch){
  rewrite ^/backstage/(.*).php$ /nl/backstage/$1.php permanent;
}

最新更新