【问题标题】:How can I pass Path parameters to lua code by nginx?如何通过 nginx 将路径参数传递给 lua 代码?
【发布时间】:2021-07-25 17:11:44
【问题描述】:

我想在我的 Nginx 中使用这样的路由 /resource/{{state}} 创建一个位置,尽管 {{state}} 是一个必须传递给我的 Lua 的变量的占位符脚本并根据这个变量我想处理一些资源。

我找不到在 Nginx 中创建此类路由并将路径参数传递给 Lua 的任何文档或指南。 nginx 中是否提供路径参数,如果答案是肯定的,我如何在 mylua 代码中访问它们?

【问题讨论】:

    标签: nginx lua


    【解决方案1】:

    将正则表达式location 语法与ngx.var.VARIABLE API 结合使用:

    location ~ ^/resource/(?<state>[^/]+)/?$ {
        content_by_lua_block {
            ngx.say(ngx.var.state)
        }
    }
    

    注意:nginx 使用PCRE2 库来支持正则表达式。检查documentation 的语法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-09
      • 1970-01-01
      • 2012-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-11
      相关资源
      最近更新 更多