我正在尝试在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;我希望有人能帮上忙:)谢谢。
发布于 2014-01-06 04:43:51
嗯,我不明白你的重写指令,它没有多大意义。查看文档:http://wiki.nginx.org/HttpRewriteModule,特别是
rewrite regex replacement因此,您必须找到一个匹配/backstage/somepage.php?language=荷兰语的正则表达式,替换方法是/nl/backstage/somepage.php。然而,这是一个棘手的问题,因为你正在尝试根据一个参数重写。所以“重写”本身并不起作用,你必须使用"if“。
这应该是可行的:
if ($args ~ language=Dutch){
rewrite ^/backstage/(.*).php$ /nl/backstage/$1.php permanent;
}https://stackoverflow.com/questions/20937603
复制相似问题