nginx之lua
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| worker_processes 1;
events { worker_connections 1024; }
http { include mime.types; default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server { listen 80; server_name localhost;
set $name $args;
location / { root html; index index.html index.htm; } location /luatest { default_type text/html; content_by_lua_file /usr/local/openresty/lualib/testcode/testlua.lua; } location /whoami { default_type application/json; content_by_lua_block { local did, err = ngx.re.match(ngx.req.get_body_data(),"[0-9]+","isjo") if not did then ngx.status = 400 ngx.print("{\"get_did\":\"false\"}") ngx.exit(ngx.HTTP_OK) end local cjson = require "cjson" local r = {} r["forword-for"] = ngx.var.http_x_forwarded_for r["remote_addr"] = ngx.var.remote_addr r["request"] = ngx.var.request r["request_time"] = ngx.var.request_time r["http_user_agent"] = ngx.var.http_user_agent r["arg"] = ngx.var.name r["did"] = did local s = cjson.encode(r) ngx.say(s) } }
error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
|