Lua之旅初见
Posted xz笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lua之旅初见相关的知识,希望对你有一定的参考价值。
写着写着就学会了,看着看着就提高了!
初探lua
lua是运行在nginx下的脚本语言,这个语言能够快速响应客户端的Url访问,快速返回响应回复,客户端根据请求和回复,做出分析。
Lua运行的环境依赖
lua运行于linux系统,Nginx脚本加载,属于openresty框架,在服务端的目录结构,如下图所示:
openresty包含几层目录(bin、luajit、lualib、nginx),当然这些都是编译openresty后生成的,有兴趣可以到网站上下载这个已经编译好的包,直接放到linux服务器上运行,即可。
Nginx
对于nginx,我们无须掌握太多,目前大型的web网站,都是拿这个当作直接面对客户端浏览器访问的,我们只需要掌握,启动脚本、重启脚本、停止脚本、如何配置nginx.conf就足够了。
启动脚本:直接到/usr/local/openresty/nginx/sbin目录下,执行nginx
重启脚本:在该目录下 nginx -s reload
停止脚本:在该目录下 nginx -s stop
配置nginx.conf:跟lua相关的,我们看一下
当浏览器里执行
http://192.168.253.128/gtest?xxx
时,nginx就会找到/usr/local/openresty/lualib/filesys/test.lua脚本开始执行。所以,我们只需完善test.lua,就能达到服务端代码执行的目的。
lua脚本的写法
例子 一 .
一个最简单的例子,直接返回一句话
代码
local testchar = "I am a tester!"
ngx.say("testchar="..testchar,"<br/>");
return
例子 二 .
返回url的方法名称
代码
local document_uri = ngx.var.uri;
ngx.say(ngx.INFO,"document_uri="..document_uri,"<br/>");
return
代码中 ngx.var.uri 为取url请求方法的函数
例子 三 .
取出url参数,并封装成jason返回
代码
local cjson = require "cjson";
local document_uri = ngx.var.uri;
ngx.say(ngx.INFO,"document_uri="..document_uri,"<br/>");
local uri_args = ngx.req.get_uri_args();
ngx.say("uri_args="..cjson.encode(uri_args),"<br/>");
return
代码中 ngx.req.get_uri_args为取url请求参数的函数
require "cjson" 是加载cjson模块,该模块可以把字符串转义封装为jason格式
如图所示
好了,本节初始lua,暂时完毕!
后续关注Lua之旅(二)脚本详解
以上是关于Lua之旅初见的主要内容,如果未能解决你的问题,请参考以下文章
游戏人生,我的lua之旅:那些坑爹的CCBReaderLoad
Linux探索之旅第一部分第四课:磁盘分区,并完毕Ubuntu安装