基于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的开源库不断推出,新技术层出不穷,需要我们不断 ...
随机推荐
- 推荐一个IT人必备的东西【用过的都懂,让我们的环境越来越好吧】
有个东西叫IT人手册,不知道各位有用过吗?不过很可惜以前那个关掉了,那个网站说出了我们IT人太多的新声以及一些黑心公司,不过被迫压力下关闭了 我不是托,我只是分享 我觉得这种东西应该存在下去~!!!至 ...
- hadoop深入研究:(七)——压缩
转载请标明出处:hadoop深入研究:(七)——压缩 文件压缩主要有两个好处,一是减少了存储文件所占空间,另一个就是为数据传输提速.在hadoop大数据的背景下,这两点尤为重要,那么我现在就先来了解下 ...
- DatePicker的使用
activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android ...
- 内存数据网格IMDG简单介绍
1 简单介绍 将内存作为首要存储介质不是什么新奇事儿,我们身边有非常多主存数据库(IMDB或MMDB)的样例.在对主存的使用上.内存数据网格(In Memory Data Grid,IMDG)与IMD ...
- 图像特征提取方法:Bag-of-words
Bag-of-words简单介绍 最初的Bag-of-words ,也叫做"词袋",在信息检索中,Bag-of-words model假定对于一个文本,忽略其词序和语法,句法,将其 ...
- SVN最有效的方法打基线
笔者:张克强 在微博上:张克强-敏捷307 2014/7/6 方法一来自于我的一条微博: 组织级scm建一个名为controlled的文件夹,当项目某文档通过评审后,组织级scm从项目文件夹下找 ...
- 全国各大 oj 分类题集...
各种题集从易到难刷到手软 你准备好了吗? 准备剁手吧
- char数组和String互转
char ch[100];string str; 把char*(c类型的string)数组转换为string:str = ch; //即可str.assign(ch); //也可 把string类型转 ...
- Extjs4 RowEditing 的使用和更新方法
如何灵活快速的掌握RowEditing组件的应用,应大家的要求,今天给大家具体讲下该组件的使用. 1.创建 var rowEditing = Ext.create('Ext.grid.plugin.R ...
- 【转】Vim学习资料
初学资料:1:一个介绍VIM操作的游戏,十分适合初学者.只是:不要怕英文.vim-adventures.com2:http://blog.csdn.net/niushuai666/article/de ...