基于lua的网页脚本开发语言cgilua(转)
这里为大家介绍基于lua脚本实现的网页开发语言,cgilua
介绍
cgilua使用Lua是一个用于创建动态网页的服务器端脚本语言。纯LUA脚本和LUA页(LP)的支持,cgilua。Lua脚本是一个Lua程序创建一个网页的全部内容并返回给客户端。Lua页面是一个常规的标记的文本(HTML,XML等)文件中嵌入Lua代码中使用一些特殊的标签。这些标签是由cgilua和结果页返回到客户端的处理。
Lua脚本和Lua页同样易于使用,并选择其中的一个主要取决于所产生的网页的特点。当Lua页面逻辑和格式的分离更为方便,lua脚本更适合创建网页,更简单的结构,但需要内部处理的更有意义的量。
允许这两种方法来混合,cgilua提供Web应用程序开发人员提供了极大的灵活性,当这两个要求是存在的。详细的介绍了脚本的方法和一些应用实例见lua脚本和Lua页。
建筑
cgilua架构分为两层。在较低的水平是由服务器API(SAPI)和高水平的代表是cgilua API本身。SAPI是Web服务器和cgilua API之间的接口,因此它需要实现每个Web服务器和发射方法。
一个发射器负责cgilua与Web服务器的交互,实现SAPI例如使用ISAPI mod_lua IIS或Apache。cgilua发射器的参考实现是开普勒。
该cgilua API只使用SAPI实现,是完全可移植在不同的发射器的支持Web服务器。这样,任何Lua脚本或Lua页面可以被任何发射器。
请求生命周期
cgilua进程请求使用CGI隐喻(即使发射器不是基于CGI)和要求有一个可以由程序员定制的生命周期。cgilua请求的生命周期包括以下步骤的顺序为每个请求:
添加默认处理程序如luascripts和LUA页面和普通的文件格式。
执行config.lua文件,允许下一步的定制。
建立cgilua.post和cgilua.query表(处理后和查询数据)。
改变用户脚本目录。
执行注册的开放功能。
用正确的环境中执行请求的脚本。
执行注册关闭功能。
变回原来的目录
编辑config.lua文件可以自定义cgilua行为。一个典型的使用将注册的打开和关闭的功能,以改变请求处理行为。这个定制可以实现新的功能,如会话管理和私人图书馆目录剖面形态显示,甚至在整个cgilua生活方式实现新的抽象,MVC框架如轨道。
本文链接地址:http://luaie.paobuke.com/lua-web-develop-language-cgilua.html
基于lua的网页脚本开发语言cgilua(转)的更多相关文章
- NLua - 基于Lua的C#脚本引擎
Nlua NLua is the bind between Lua world and the .NET world. NLua is a fork of project LuaInterface ( ...
- ESP8266使用详解--基于Lua脚本语言
这些天,,,,今天终于看到了希望,,,天道酬勤 先说实现的功能...让ESP8266连接无线网,然后让它建立服务器,,我的客户端连接上以后,发给客户端发数据模块打印到串口,,往ESP8266串口里发数 ...
- 一、ESP8266入门(基于LUA开发)
序 一入坑便停不下来... 还挺有意思的哈,233,,,, 资料杂,自己一个一个去找确实浪费了不少时间,而且大多还都是英文的,需要硬着头皮看. 这次实践入门,更是对英语的重要确信无疑.Github必须 ...
- 开发语言性能对比,C++、Java、Python、LUA、TCC
一直想做开发语言性能对比,刚好有时间都做了给大家参考一下, 编译类:C++和Java表现还不错 脚本类:TCC脚本动态运行C语言,性能比其他脚本快好多... 想玩TCC的同学下载测试包,TCC目录下修 ...
- 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
[COCOS2DX-LUA 脚本开发之一]在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途! 分类: [Cocos2dx Lua 脚本开发 ] 2012-04-1 ...
- 基于NSIS脚本开发的安装程序制作软件:易量安装
原文 基于NSIS脚本开发的安装程序制作软件:易量安装 前几天“萝卜”给我推荐了一款安装程序制作工具——易量安装. 易量安装是一款安装程序制作软件,基于著名的NSIS(Nullsoft Scripta ...
- Redis进阶之使用Lua脚本开发
1.在Redis中使用Lua 在Redis中执行Lua脚本有两种方法:eval和evalsha. (1)eval eval 脚本内容 key个数 key列表 参数列表 下面例子使用了key列表和参数列 ...
- Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试
脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122 目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...
- Android 必须知道2018年流行的框架库及开发语言,看这一篇就够了!
导语 2017 已经悄悄的走了,2018 也已经匆匆的来了,我们在总结过去的同时,也要展望一下未来,来规划一下今年要学哪些新技术.这几年优秀Android的开源库不断推出,新技术层出不穷,需要我们不断 ...
随机推荐
- [置顶] 大量相关gis资源网盘打包下载
详细请下载附件 所有资源下载(网盘下载): http://laoheitan.bego.cc arcgis教程: http://www.bego.cc/file/23322579 ENVI教程: ht ...
- Tiny Mapper是一个.net平台开源的对象映射组件
NET平台开源项目速览(14)最快的对象映射组件Tiny Mapper 阅读目录 1.Tiny Mapper基本介绍 2.Tiny Mapper 基本使用 3.Tiny Mapper 指定配置使用 ...
- oracle 12c 中asm元数据是否有所变化
详见原文博客链接地址: oracle 12c 中asm元数据是否有所变化
- C++不支持Unicode,即使utf8
今天,字符串unicode我们已经不需要常理的理由,但是,一些有编程语言的悠久历史.这仍然是一个头疼. 尽管第三方库支持的假设,C++事实上没有真正有效地支持unicode.即使utf8.(注意:本文 ...
- bzoj2301(莫比乌斯反演+分块)
传送门:2301: [HAOI2011]Problem b 题意:对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函数为x和y ...
- Application to find the maximum temperature in the weather dataset
import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop. ...
- mongodb - 前端form表单数据传输,在保存和清除的数据格式的处理程序的 - 非递归
//处理时间段,将ISODate("2014-10-09T18: 37: 50.0Z") 兑换 2014-10-09 18:37:50这样的格式 //截至处理6层树形结构数据,当多 ...
- C#多线程问题整合
一.跨进程访问组件 错误:线程间操作无效: 从不是创建控件“XXX”的线程访问它 解决方法: 1:把CheckForIllegalCrossThreadCalls设置为false 这个方法只是不去捕获 ...
- Win7下不能查看xp系统共享的文件,解决方法
近期在做一个程序,xp执行良好.win7总是打不开文件,输入地址訪问\\192.168.0.254,发现须要输入usernamepassword 局域网内的XP电脑能够訪问WIN7的共享文件.而WIN ...
- PSU 离11.2.0.3.0 -> 11.2.0.3.11 如果解决冲突的整个
Oracle rdbms 扑灭psu离11.2.0.3.0升级到11.2.0.3.11 参考patch :18522512 停止应用,停止听音乐并DB,将db的oracle_home在下面OPatch ...