基于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的开源库不断推出,新技术层出不穷,需要我们不断 ...
随机推荐
- ORACLE—005:创建JOB(二)
假设须要创建带參数的job,怎样创建呢. 我们直接将參数声明.并赋值.然后传给job调用的存储过程就可以. 比如.存储过程名为Pro_Test_JOB,參数共同拥有一个.是VARCHAR2类型. 创建 ...
- POJ 3414 Pots 记录路径的广搜
Description You are given two pots, having the volume of A and B liters respectively. The following ...
- Linux SSH常用总结(转)
一.连接到远程主机 格式: ssh name@remoteserver 例如: ssh ickes@192.168.27.211 二.连接到远程主机指定的端口 格式: ssh name@remotes ...
- Linux源文件夹结构呈现
1.arch文件夹: - 相关的存储在不同平台上的代码,每个平台都采用了不同的文件夹来区分. ******Alpha平台 ******Arm平台 ******Arv32平台 ******X86平台 2 ...
- js:进一步关闭(范围:下一个)
function fn1(){ //创建一个数组 var fns = new Array(); //i这个变量是保存在fn1这个作用域中 for(var i=0;i<10;i++ ...
- Redis启动多端口,运行多实例(转)
使用redis在同一台机器上,启用多个端口,实现多个实例,完成集群的模拟实现. 启动多实例 redis默认启动端口为6379,我们可以使用 --port 来指定多个端口,如下,在linux终端命令: ...
- FZU 2113(数位dp)
题目连接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=38054 题意:求区间[a,b]中包含'1'的个数. 分析:数位dp ...
- CSDN开源夏令营 百度数据可视化实践 ECharts(8)问题分析
ECharts问题描写叙述: 问题就是折线图上的点是显示的,有人问能不能一開始不显示,当你点击的时候或者是当鼠标移动到上面的时候,折线上的点才显示? 例如以下图所看到的: 分析:让折线上的点不显示能够 ...
- ajax基本概念,方法
ajax Asynchronous javascript and xml异步的 javascript and XMLajax 是一门在不刷新网页的情况下,与服务器进行交互更新部分网页的技术: 传 ...
- art patchoat
Add patchoat tool to Art. Add a new executable called patchoat to art. This tool takes alreadycompil ...