这里为大家介绍基于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框架如轨道。

cgilua下载

http://luaie.paobuke.com/lua-web-develop-language-cgilua.html

基于lua的网页脚本开发语言cgilua(转)的更多相关文章

  1. NLua - 基于Lua的C#脚本引擎

    Nlua NLua is the bind between Lua world and the .NET world. NLua is a fork of project LuaInterface ( ...

  2. ESP8266使用详解--基于Lua脚本语言

    这些天,,,,今天终于看到了希望,,,天道酬勤 先说实现的功能...让ESP8266连接无线网,然后让它建立服务器,,我的客户端连接上以后,发给客户端发数据模块打印到串口,,往ESP8266串口里发数 ...

  3. 一、ESP8266入门(基于LUA开发)

    序 一入坑便停不下来... 还挺有意思的哈,233,,,, 资料杂,自己一个一个去找确实浪费了不少时间,而且大多还都是英文的,需要硬着头皮看. 这次实践入门,更是对英语的重要确信无疑.Github必须 ...

  4. 开发语言性能对比,C++、Java、Python、LUA、TCC

    一直想做开发语言性能对比,刚好有时间都做了给大家参考一下, 编译类:C++和Java表现还不错 脚本类:TCC脚本动态运行C语言,性能比其他脚本快好多... 想玩TCC的同学下载测试包,TCC目录下修 ...

  5. 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!

    [COCOS2DX-LUA 脚本开发之一]在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途! 分类: [Cocos2dx Lua 脚本开发 ] 2012-04-1 ...

  6. 基于NSIS脚本开发的安装程序制作软件:易量安装

    原文 基于NSIS脚本开发的安装程序制作软件:易量安装 前几天“萝卜”给我推荐了一款安装程序制作工具——易量安装. 易量安装是一款安装程序制作软件,基于著名的NSIS(Nullsoft Scripta ...

  7. Redis进阶之使用Lua脚本开发

    1.在Redis中使用Lua 在Redis中执行Lua脚本有两种方法:eval和evalsha. (1)eval eval 脚本内容 key个数 key列表 参数列表 下面例子使用了key列表和参数列 ...

  8. Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试

    脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122   目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...

  9. Android 必须知道2018年流行的框架库及开发语言,看这一篇就够了!

    导语 2017 已经悄悄的走了,2018 也已经匆匆的来了,我们在总结过去的同时,也要展望一下未来,来规划一下今年要学哪些新技术.这几年优秀Android的开源库不断推出,新技术层出不穷,需要我们不断 ...

随机推荐

  1. discuz清空session,导致session保存机制失败,session无法更新与解决

    <?php function userErrorHandler() { $e = func_get_args(); echo '<pre style="color:red;&qu ...

  2. php中empty()、isset()、is_null()和变量本身的布尔判断区别(转)

    在php脚本中,我们经常要去判断一个变量是否已定义或者是否为空,就需要用到这些函数empty().isset().is_null()和其本身作为参数,下面小段程序做个简要比较 <?php//预定 ...

  3. 使用Swing实现简易而不简单的文档编辑器

    本文通过Swing来实现文档简易而不简单的文档编辑器,该文档编辑器的功能包括: 设置字体样式:粗体,斜体,下划线,可扩展 设置字体:宋体,黑体,可扩展 设置字号:12,14,18,20,30,40, ...

  4. Unity学习笔记(二)——第一个Unity项目Hello Unity

    保留版权,转载请注明出处:http://blog.csdn.net/panjunbiao/article/details/9318811 在这一篇文章里,参照宣雨松的<Unity 3D游戏开发& ...

  5. C++ Primer 学习笔记_61_重载操作符与转换 --自增/自减操作符

    重载操作符与转换 --自增/自减操作符 引言: 自增,自减操作符常常由诸如迭代器这种类实现,这种类提供相似于指针的行为来訪问序列中的元素.比如,能够定义一个类,该类指向一个数组并为该数组中的元素提供訪 ...

  6. Codeforces Round #272 (Div. 1)C(字符串DP)

    C. Dreamoon and Strings time limit per test 1 second memory limit per test 256 megabytes input stand ...

  7. 服务器编程入门(2)IP协议详解

    问题聚焦:     IP协议是TCP/IP协议族的核心协议,也是socket网络编程的基础之一.这里从两个方面较为深入地探讨IP协议:     1,IP头部信息(指定IP通信的源端IP地址,目的端IP ...

  8. SE 2014年4月18日

    实验需求:   R1 R2 R3用环回口建立IBGP对等体(使用对等体组),AS号为100                     R4 R5 R6用环回口建立IBGP对等体(使用对等体组),AS号为 ...

  9. Harris角点检测算原理

    主要参考了:http://blog.csdn.net/yudingjun0611/article/details/7991601  Harris角点检测算子 本文将该文拷贝了过来,并做了一些数学方面的 ...

  10. C++设计模式--观察员

    概要 在软件构建过程中.我们须要为某些对象建立一种"通知依赖关系" --一个对象(目标对象)的状态发生改变,全部的依赖对象(观察者对象)都将得到通知.假设这种依赖关系过于紧密,将使 ...