【lua】LWT HttpdModule】的更多相关文章

要使用httpd模块,需要在脚本开头添加: require "httpd" httpd.pairs(apr_table) 用以遍历apr_table for key, value in httpd.pairs(t) do body end 例: require "httpd" local table = { "uri", "protocol", "hostname", "path", &…
首先用lua遍历目录: function getDirs(path) local s = {} function attrdir(p) for file in lfs.dir(p) do if file ~= "." and file ~= ".." then local f = p .. file local attr = lfs.attributes (f) if attr.mode == "directory" then table.ins…
request请求处理 通过mod_lwt模块提供的处理程序来调用Lua脚本处理HTTP请求.具体流程: 判断该请求是否由LWT处理,如果不是,拒绝处理请求; 判断Lua脚本文件是否存在,如果不存在,返回一个HTTP 404(未找到); 响应内容类型默认为"text/html"; 创建一个新的Lua状态; 在这个新Lua状态中打开标准Lua库; 在Lua的状态下打开httpd.core库; 根据适用于该脚本的配置指令设置package.path和package.cpath变量; 加载L…
要完成目录树的构建,需要前台ExtJS构筑页面,后台处理逻辑,中间由JSON传递数据. 首先搭建后台环境: require "httpd" require "lfs" request, args = ... local s = {root = { text = "rootNode", expanded = true, children = { { text = 'book1', leaf = true }, { text = "book…
类和对象: account.lua   module(...,package.seeall) Account={balance=} Account.new=function(self,o) local o=o or {} setmetatable(o,self) self.__index=self return o end Account.getBalance=function(self) return self.balance end Account.setBalance=function(s…
在Lua中,你可以使用单行注释和多行注释. 单行注释中,连续两个减号"--"表示注释的开始,一直延续到行末为止.相当于C++语言中的"//". 多行注释中,由"--[["表示注释开始,并且一直延续到"]]"为止.这种注释相当于C语言中的"/**/".在注释当中,"[["和"]]"是可以嵌套的.   Lua 编程 经典的"Hello world"的程…
Lua处理后台逻辑,Lua lwt搭建后台程序,ExtJS根据后台传来的json数据构建目录树. 前台html和ExtJS代码不用多讲,直接上代码: treePanel.html <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>ExtJS TreePanel</title>…
Lua 是一个小巧的脚本语言.它具有轻量级.可扩展等优势.它可以作为一个强大.轻量的脚本语言,供任何需要的程序使用. LWT (Lua Web Tools) 可让你使用 Lua 开发 Web 应用,并可直接在 Apache 上运行.LWT 的核心功能通过一个 Apache 的模块(mod_lwt)来提供.另外 LWT 提供可选的 Lua 模块用来访问数据库和缓存. 现在用lua + LWT来搭建后台web环境. 安装lua: 在linux中,有两种方法可以安装lua. 第一种:系统为Ubunut…
Lua是一门以性能著称的脚本语言,被广泛的应用在很多方面,比如很多游戏的插件. 很多时候,没有必要去考虑性能的问题,不过,如果我们在开始编写代码的时候就以更适当,性能更高的方式与结构去组织代码,对于程序最后的性能有很大的好处.这不是强调过早的优化代码,只是一种很好的代码编写习惯. 在Lua中,我们需要知道下面这些: 使用local 在代码运行前,Lua会把源码预编译成一种中间码,类似于Java的虚拟机.这种格式然后会通过C的解释器进行解释,整个过程其实就是通过一个while循环,里面有很多的sw…
OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器,它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. OpenResty 通过汇聚各种设计精良的 Nginx 模块, 从而将 Nginx 有效的变成一个强大的 Web 应用服务器, 这样, Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种C以及Lua 模块, 快速构造出足以胜任 10K+ 并发连接响应的超高性能Web 应用系统. OpenResty 的…