openresty+lua功能体验

Web技术 jikk345 947℃ 0评论

1、Nginx服务器中使用lua获取get或post参数 

(a)将location的匹配上加好lua路径,需要平滑重启
  1. location /qinglin {
  2. lua_code_cache off;
  3. content_by_lua_file lua/hello.lua;
  4. }

(b)编写lua文件
  1. [root@Qinglin-Student nginx]# vim lua/hello.lua
  2. local args = ngx.req.get_uri_args()
  3. local salt = args.salt
  4. if not salt then
  5. ngx.exit(ngx.HTTP_BAD_REQUEST)
  6. end
  7. local string = ngx.md5(ngx.time() .. salt)
  8. ngx.say(string)
(c)测试,给salt参数,让其缓存到到salt变量中得出md5值
  1. 正确得出结果
  2. [root@Qinglin-Student nginx]# curl localhost/qinglin?salt=123
  3. 0bed2fdf7bfcce35c0b0e83851d6808d
  4. 错误得出结果
  5. [root@Qinglin-Student nginx]# curl localhost/qinglin
  6. <html>
  7. <head><title>400 Bad Request</title></head>
  8. <body bgcolor="white">
  9. <center><h1>400 Bad Request</h1></center>
  10. <hr><center>openresty/1.9.3.1</center>
  11. </body>
  12. </html>
lua-resty-lock
为了解决缓存失效风暴问题

转载请注明:清麟博客 » openresty+lua功能体验

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址