Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data from Web forms. CGILua allows the separation of logic and data handling from the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server. You can develop a CGILua application for one Web server and run it on any other Web server that supports CGILua, even if using a different launching model.
CGILua can be used with a variety of Web servers and, for each server, with different launchers. A launcher is responsible for the interaction of CGILua and the Web server, for example using ISAPI on IIS or mod_lua on Apache. The reference implementation of CGILua launchers is Kepler.
CGILua is free software and uses the same license as Lua 5.0.
Status
Current version is 5.0.1
Download
CGILua source code can be downloaded from its LuaForge page
History
- Version 5.0.1 [20/Sep/2006]
-
- Uses Compat-5.1 Release 5.
- Caches Lua Pages template strings.
- New configuration examples.
- Improvements in the Session library.
- Removed the
debug
package from the user scripts environment. - POST handling bug fixes (related to the
text/plain
content type).
- Version 5.0 [23/Jul/2005]
- Version 5.0 beta 2 [23/Dec/2004]
-
- Distribution bug fix: stable.lua was missing
- Version 5.0 beta [15/Dec/2004]
-
- New ISAPI and Servlet Launchers.
- New Error Handling features.
- New persistent data feature (Stable).
- Uses the package model for Lua 5.1.
- Simpler User Session API.
- Small bug corrections
- Version 5.0 alpha 3 [8/Jun/2004]
- Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (4.0 and 3.x)
- CGILua 5.0 uses Lua 5.0.
The cgi
table now allows table values. See Receiving parameters for a more detailed explanation.- The template tags have changed. See Lua pages for a more detailed explanation.
- The use of
getenv
calls to obtain CGI variables should be replaced bycgilua.servervariable
calls.
Credits
- CGILua 5.0
- CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
- CGILua 4.0
- Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
- CGILua 3.x
- CGILua was born as the evolution of an early system developed by
Renato Ferreira Borges and André Clínio at
TeCGraf.
At the time (circa 1995) there were no CGI tools available and everything
was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.
Contact us
For more information please contact us. Comments are welcome!
You can also reach other CGILua developers and users on the Kepler Project mailing list.