要使用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. apache mina2.0源码解析(一)

    apache mina是一个基于java nio的网络通信框架,为TCP UDP ARP等协议提供了一致的编程模型:其源码结构展示了优秀的设计案例,可以为我们的编程事业提供参考. 依照惯例,首先搭建a ...

  2. Java知多少虚拟机(JVM)以及跨平台原理

    相信大家已经了解到Java具有跨平台的特性,可以“一次编译,到处运行”,在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的. 那么,跨平台是怎样实现的呢?这就 ...

  3. [转]Control的Invoke和BeginInvoke

    转自:Control的Invoke和BeginInvoke  作者:Kuffy Wang 近日,被Control的Invoke和BeginInvoke搞的头大,就查了些相关的资料,整理如下.感谢这篇文 ...

  4. 使用SQL Delta.v5.1.1.98.破解版同步数据结构

    概述 本篇文章主要介绍SQL DELTA的简单使用.为了能够更加明了的说明其功能,本文将通过实际项目中的案例加以介绍. 1. SQLDELTA简介 SQLDELTA是一款便捷实用的数据库管理工具.使用 ...

  5. ptyhon【递归练习】

  6. MongoDB集群方案介绍

    MongoDB集群方案介绍 一.什么是mongodb集群? 是指由多台mongodb服务器组成的服务器集群,称之为mongodb集群. 二.mongodb集群搭建的方式: 1.Replica Set  ...

  7. 201621123023《Java程序设计》第1周学习总结

    第1周-Java基本概念 一.本周学习总结 关键词:java发展历史.JVM/JRE/JDK.编辑器 java是一门面向对象的语言,相比于C语言我感觉java更方便.java是运行在JVM上的,不同的 ...

  8. OCP题库变了,2018年052新题库-29题

    29.In one of your databases: * The database default tablespace is EXAMPLE. * Deferred_segment_creati ...

  9. Oracle中对多行查询结果进行拼接

    to_char(wmsys.wm_concat(to_char( st.col_name))) as new_name to_char: 将当前值转换成字符串类型; wmsys.wm_concat:拼 ...

  10. Quartz.Net_表达式参考说明

    字段名 允许的值 允许的特殊字符 秒 0-59 , - * / 分 0-59 , - * / 小时 0-23 , - * / 日 1-31 , - * ? / L W C 月 1-12 , - * / ...