如何使用Nginx重写将url段转换为querystring

时间:2017-05-11 05:02:27

标签: nginx url-rewriting

我想要这个简单的重写规则:

http://example.com/8743b52063cd84097a65d1633f5c74f5?param1=999&param2=2222

重定向到:

http://example.com/index.php?param1=999&param2=2222&hash=8743b52063cd84097a65d1633f5c74f5

以下是我的默认位置:

location / {
    try_files $uri $uri/ /index.php$is_args$args;
}

如何使用Nginx重写实现此目的?

1 个答案:

答案 0 :(得分:2)

使用rewrite statement

rewrite "^/(\w{32})$" /index.php?hash=$1 last;

或者,在location block内:

location ~ "^/(?<hash>\w{32})$" {
    rewrite ^ /index.php?hash=$hash last;
}