使用 lua 模块在 nginx 中将结束路径设为小写

make endpath to lowercase in nginx using lua module

我想在将其设置为代理通行证之前将请求 url 设为小写。

这是我的 nginx 文件

location ^~ /admin/(?<endpath>.*)
            {
                set_by_lua     ngx.var.endpath string.lower(ngx.var.endpath)
                proxy_pass     http://api.sample.com/api/portal/admin/$endpath$is_args$args;
            }

但我收到错误消息:无效变量名称“ngx.var.endpath”

我不太了解 nginx 但根据 docs lua 代码应该是一个字符串。

所以不用

set_by_lua     ngx.var.endpath string.lower(ngx.var.endpath)

试试

set_by_lua $endpath 'return string.lower(ngx.var.endpath)'