查询字符串的nginx位置正则表达式

时间:2012-07-03 06:51:42

标签: redirect url-rewriting nginx webserver

我想将带有perticuler查询字符串直接发送到我服务器的任何内容重定向到同一域中的其他位置。

如果用户来

http://www.mydomain.com/?abc=js9sd70s

我想将其重定向到

http://www.mydomain.com/otherpath/?abc=js9sd70s

查询字符串?abc=js9sd70s应与新网址相同。

请建议使用nginx配置文件。

我已经尝试了以下代码的大部分替代方案。保持'\'之前?和=签名。

        location ~ /?abc=.* {
                rewrite ^/(.*)$ http://www.mydomain.com/otherpath/$1 permanent;
        }

请建议我更改位置。

1 个答案:

答案 0 :(得分:10)

简短回答,试试这个配置:

location = / {
    if ( $arg_abc ) {
        rewrite ^ /otherpath/ permanent;
    }
}