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相关的,我们看一下


Lua之旅(一)初见

当浏览器里执行

http://192.168.253.128/gtest?xxx

时,nginx就会找到/usr/local/openresty/lualib/filesys/test.lua脚本开始执行。所以,我们只需完善test.lua,就能达到服务端代码执行的目的。

lua脚本的写法

例子 一 .

一个最简单的例子,直接返回一句话

Lua之旅(一)初见

代码

local testchar = "I am a tester!"

ngx.say("testchar="..testchar,"<br/>");

return


例子 二 .

返回url的方法名称

Lua之旅(一)初见

代码

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

1LUA04海南島 海口 三亞 椰風海韻 環島4天直航之旅

Linux探索之旅第一部分第四课:磁盘分区,并完毕Ubuntu安装

(一)cocos2dx坑爹之旅--天坑CocosBuilder

C#多线程之旅

泰坦之旅MOD怎么用