【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", "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的更多相关文章
- 【Lua】LWT遍历指定目录并输出到页面中
首先用lua遍历目录: function getDirs(path) local s = {} function attrdir(p) for file in lfs.dir(p) do if fil ...
- 【lua】LWT request请求处理
request请求处理 通过mod_lwt模块提供的处理程序来调用Lua脚本处理HTTP请求.具体流程: 判断该请求是否由LWT处理,如果不是,拒绝处理请求; 判断Lua脚本文件是否存在,如果不存在, ...
- 【Lua】LWT后台用JSON与 ExtJS传递数据
要完成目录树的构建,需要前台ExtJS构筑页面,后台处理逻辑,中间由JSON传递数据. 首先搭建后台环境: require "httpd" require "lfs&qu ...
- 【Lua】面向对象编程(一)
类和对象: account.lua module(...,package.seeall) Account={balance=} Account.new=function(self,o) local ...
- 【Lua】特性和一些基础语法
在Lua中,你可以使用单行注释和多行注释. 单行注释中,连续两个减号"--"表示注释的开始,一直延续到行末为止.相当于C++语言中的"//". 多行注释中,由& ...
- 【Lua】Lua + LWT + ExtJS构建目录树
Lua处理后台逻辑,Lua lwt搭建后台程序,ExtJS根据后台传来的json数据构建目录树. 前台html和ExtJS代码不用多讲,直接上代码: treePanel.html <html&g ...
- 【Lua】linux下lua+mod_lwt环境搭建
Lua 是一个小巧的脚本语言.它具有轻量级.可扩展等优势.它可以作为一个强大.轻量的脚本语言,供任何需要的程序使用. LWT (Lua Web Tools) 可让你使用 Lua 开发 Web 应用,并 ...
- 【Lua】Lua的几点优化原则
Lua是一门以性能著称的脚本语言,被广泛的应用在很多方面,比如很多游戏的插件. 很多时候,没有必要去考虑性能的问题,不过,如果我们在开始编写代码的时候就以更适当,性能更高的方式与结构去组织代码,对于程 ...
- 【Lua】Debian环境下openresty的安装
OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器,它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. OpenResty 通 ...
随机推荐
- no getter for property named 'power_state
错误信息:nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for pr ...
- php获取数组的键值
<?php header ( "Content-type: text/html; charset=utf-8" ); $info[; $info[; $info[; $inf ...
- WebService 常用的设置
1.修改WebService接收长度 <binding name="IAuthServiceSoap11Binding" maxBufferSize="214748 ...
- 重新理解javascript回调函数
把函数作为参数传入到另一个函数中.这个函数就是所谓的回调函数 经常遇到这样一种情况,某个项目的A层和B层是由不同的人员协同完成.A层负责功能funA,B层负责funcB.当B层要用到某个模块的数据,于 ...
- Sublime text3!行首,行尾,批量编辑!
1.Windows下的操作操作步骤 1.Ctrl + H 2.打开正则,输入^,然后Find All,查找所有的行首 3.打开正则,输入$,然后Find All,查找所有的行尾 4.光标闪动,就可以进 ...
- BZOJ4032: [HEOI2015]最短不公共子串(后缀自动机+序列自动机)
题目描述 在虐各种最长公共子串.子序列的题虐的不耐烦了之后,你决定反其道而行之. 一个串的“子串”指的是它的连续的一段,例如bcd是abcdef的子串,但bde不是. 一个串的“子序列”指的是它的可以 ...
- java 优秀文章集锦
一个简易的静态网页服务器 https://www.cnblogs.com/longfurcat/p/10355514.html 浅析Servlet执行原理 https://www.cnblo ...
- PHP curl 上传文件版本兼容问题
[摘要:做微疑开辟挪用微疑接心上传文件时,总是返回 {"errcode":41005,"errmsg":"media data missing hin ...
- [BZOJ 4921][Lydsy1706月赛]互质序列
传送门 因为区间 gcd 的变换不会超过 log 个,所以我们可以暴力枚举区间起点,复杂度是 n*logn 的 #include <bits/stdc++.h> using namespa ...
- 知了课堂 Python Flask零基础 笔记整理
目录 起步 安装Python2.7: Python虚拟环境介绍与安装: pip安装flask: 认识url: URL详解 web服务器和应用服务器以及web应用框架: Flask 第一个flask程序 ...