本文主要是介绍Nginx 配置access_by_lua返回状态码和参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、介绍
access_by_lua是nginx权限访问控制的一个模块,通过配置相关参数可以达到访问应用权限控制的目的
2、示例
- ngx.header.content_type = "application/json;charset=utf8" 控制返回数据的类型
- ngx.say用来返回数据
- ngx.exit退出并返回状态码
location ~*\/api/v4/(objects|warning)(.*)/ {access_by_lua 'local transfer_request_query = ngx.req.get_uri_args()local res = ngx.location.capture("/auth_get", { args = transfer_request_query })ngx.header.content_type = "application/json;charset=utf8"local json = require "cjson";if res.status == ngx.HTTP_OK thenreturnendif res.status == 401 thenngx.status = res.statusngx.say(res.body)ngx.exit(401)endif res.status == 403 thenngx.say("haha 403")ngx.exit(ngx.HTTP_FORBIDDEN)endif res.status == 503 thenngx.exit(ngx.HTTP_METHOD_NOT_IMPLEMENTED)endngx.exit(ngx.HTTP_INTERNAL_SERVER_ERROR)--ngx.exit(507)';
这篇关于Nginx 配置access_by_lua返回状态码和参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!