要使用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", "path_info", "args",
"method", "filename", "filedir", "user", "auth_type",
"local_ip", "remote_ip" } httpd.set_content_type("text/plain; charset=utf8") httpd.write("Hello Lua World\r\n")
httpd.write("----------------------------------\n") for mm, key in ipairs(table) do
httpd.write(mm .. "->" .. key .. "\r\n")
end httpd.write("----------------------------------")

  httpd.set_status (status)

    设置一个介于100到599的值作为HTTP响应的状态。

  httpd.set_content_type (content_type)

    将HTTP响应的内容类型设置为指定值。

httpd.set_content_type("text/html; charset=utf-8");

  httpd.add_header (name, value [, err_header])

    添加HTTP响应头,值是表示该头的值的字符串。

  httpd.add_cookie (name [, value [, expires [, path [, domain [, secure [, httponly]]]]]])

    添加cookie  

  httpd.write_template (filename [, flags [, file]])

    根据指定的文件模版渲染网页

    如果模版被解析,则下面的指令将被模版引擎解释:

  httpd.escape_uri (string)

      相对于uri的转义字符序列

  httpd.escape_xml (string)

      相对于xml的转义字符串序列

      

  httpd.escape_js (string)

      相对于js的转义字符串序列

      

    httpd.input

      用来读取HTTP请求数据流,和Lua的input类似

    httpd.output

      用来输出HTTP响应数据流,和Lua的output类似

  httpd.read(...)

      相当于httpd.input:read(....)

  httpd.write(...)

      相当于httpd.output:write(...)

  httpd.debug (message)

      将消息记录写入HTTP server debug级别的日志内

  httpd.notice (message)

      将消息记录写入HTTP server notice级别的日志内

  httpd.err (message) 

      将消息记录写入HTTP server err级别的日志内

  httpd.redirect (request, uri, status)

      设置Location头信息并返回状态码,当浏览器接受到头信息中的 Location: xxxx 后,就会自动跳转到 xxxx 指向的URL地址,这个跳转只有浏览器知道,不管体内容里有没有东西,用户都看不到。     

return httpd.redirect(request, "/next.lua", status)

  httpd.dump (value)

      将value写入至HTTP响应主体、HTML内、函数处理的Lua表中、ARP表或者递归

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

  1. 【Lua】LWT遍历指定目录并输出到页面中

    首先用lua遍历目录: function getDirs(path) local s = {} function attrdir(p) for file in lfs.dir(p) do if fil ...

  2. 【lua】LWT request请求处理

    request请求处理 通过mod_lwt模块提供的处理程序来调用Lua脚本处理HTTP请求.具体流程: 判断该请求是否由LWT处理,如果不是,拒绝处理请求; 判断Lua脚本文件是否存在,如果不存在, ...

  3. 【Lua】LWT后台用JSON与 ExtJS传递数据

    要完成目录树的构建,需要前台ExtJS构筑页面,后台处理逻辑,中间由JSON传递数据. 首先搭建后台环境: require "httpd" require "lfs&qu ...

  4. 【Lua】面向对象编程(一)

    类和对象: account.lua   module(...,package.seeall) Account={balance=} Account.new=function(self,o) local ...

  5. 【Lua】特性和一些基础语法

    在Lua中,你可以使用单行注释和多行注释. 单行注释中,连续两个减号"--"表示注释的开始,一直延续到行末为止.相当于C++语言中的"//". 多行注释中,由& ...

  6. 【Lua】Lua + LWT + ExtJS构建目录树

    Lua处理后台逻辑,Lua lwt搭建后台程序,ExtJS根据后台传来的json数据构建目录树. 前台html和ExtJS代码不用多讲,直接上代码: treePanel.html <html&g ...

  7. 【Lua】linux下lua+mod_lwt环境搭建

    Lua 是一个小巧的脚本语言.它具有轻量级.可扩展等优势.它可以作为一个强大.轻量的脚本语言,供任何需要的程序使用. LWT (Lua Web Tools) 可让你使用 Lua 开发 Web 应用,并 ...

  8. 【Lua】Lua的几点优化原则

    Lua是一门以性能著称的脚本语言,被广泛的应用在很多方面,比如很多游戏的插件. 很多时候,没有必要去考虑性能的问题,不过,如果我们在开始编写代码的时候就以更适当,性能更高的方式与结构去组织代码,对于程 ...

  9. 【Lua】Debian环境下openresty的安装

    OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器,它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. OpenResty 通 ...

随机推荐

  1. java 添加到数据库的数据没有时分秒

    检查hibernate实体类的映射文件日期类型把date 改为 java.util.Date

  2. Code First ef SQL Server 版本不支持数据类型“datetime2”

    When calling DbContext.SaveChanges, I get a DbUpdateException:An unhandled exception of type 'System ...

  3. selenium+jenkins+maven+testNG搭建持续集成环境

    为了简明起见,分几大部分,很基础的细节就不详述了 一·安装jenkins 二·创建一个maven项目的job 2.1   填上SVN的Repository URL 2.2  由于是在本地执行maven ...

  4. WPF 之 UI 异步交互

    System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(()=> { //··················· ...

  5. MongoDB复制集与Raft协议异同点分析

    此文已由作者温正湖授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.日志复制流程: a.raft leader节点在接收client请求后,先将请求写到日志中,再将日志通过 ...

  6. Django-05模型层之多表操作2

    7.3 多表操作 一.创建模型 实例:我们来假定下面这些概念,字段和关系作者模型:一个作者有姓名和年龄.作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情模型和作者模型之 ...

  7. ie7 a标签强制不换行兼容问题

    a内容错乱如图所示: 解决方法:加个样式就行white-space:nowrap;  最终效果图: 添加了white-space:nowrap 之后, 这样就强制一段文字不会自动换行了.

  8. C# Winform下一个热插拔的MIS/MRP/ERP框架13(窗体基类)

    作为一个ERP数据处理框架,大部分的开发场景都差不多. 理想中,对于通用数据处理,我的步骤如下: 1.为窗体指定数据来源(数据表/查询等): 2.拖入编辑控件,指定绑定字段: 3.结束. 为此,我设计 ...

  9. 各大SRC中的CSRF技巧

    本文作者:i春秋签约作家——Max. 一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/ses ...

  10. [Flex] FlashBuilder 4.6运用标签嵌入字体方法

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...