使用LUA/perl将Nginx重写查询参数值转换为小写字母

我们想通过小写化URI查询参数值来重写传入的请求。但是,我们不想小写化整个uri而只是第一个参数值。

例如: /token?param1= Alejandro&param2=val2&param3=val3

我们想要重写为: /token?param1= alejandro&param2=val2&param3=val3

是否可以使用LUA或Perl实现这个功能?

我尝试过,但根本不起作用:

    location / {
if ($args ~* "/token?param1=val1&param2=val2&param3=val3") {
        set_by_lua $request_uri_low "return ngx.arg[1]:lower()" $request_uri;
        rewrite ^ https://$host$request_uri_low permanent;
}

}

原文链接 https://stackoverflow.com/questions/71323384

点赞