Xavante
A Lua Web Server with CGILua support

Overview

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers. Xavante currently offers a file handler, a redirect handler and a CGILua handler. Those are used for general files, URI remapping and CGILua 5.0 scripts respectively. A WebDAV handler is in the works.

Xavante is free software and uses the same license as Lua.

Status

Current version is 1.2 and works with Lua 5.0.

Download

Xavante source code can be downloaded from its LuaForge page.

Dependencies

Xavante dependencies can be separated by the used handlers:

Xavante Core
File Handler (optional)
CGILua handler (optional)

The portability of Xavante is determined by its binary components (LuaSocket, LuaFileSystem and Rings) and Lua itself. The other components are written in Lua and are as portable as Lua itself.

History

Xavante 1.2 [20/Sep/2006]
  • Uses Compat-5.1 Release 5
  • Handles multivalued HTTP headers
  • Added HTTP chunked mode response
  • New startup method, using KEPLER_INIT if available
  • New configuration option for the Xavante startup message
  • Redirection sends a 302 status instead of a 301 (less client caching)
  • Changed xavante/server.lua to xavante/xavante.lua for a simpler require"xavante" instead of require"xavante.server"
  • Uses Rings instead of VEnv in the CGILua handler
  • Minor bug fixes in the CGILua handler
Xavante 1.1 [12/Jul/2005]
  • Sajax
  • Uses Copas.step() to allow more control of the Xavante loop.
  • Uses coxpcall 1.6
  • New documentation with installation examples using Kepler file structure
  • Code cleanup, minor bug fixes
Xavante 1.1 Beta [17/Mar/2005]
  • First public release
  • Refactored to use Copas
  • Source base merged with luahttpd
  • New configuration file with simpler rules
Xavante 1.0 [Feb/2004]
  • (not released to the public)

Credits

Xavante 1.2 was implemented by Javier Guerra, André Carregal, Fábio Mascarenhas and Leonardo Godinho.

Xavante 1.1 was redesigned and implemented by Javier Guerra and André Carregal. It merged Javier's work with luahttpd and André's work with Copas and Xavante 1.0. luahttpd is now part of Xavante.

Xavante 1.0 was designed and implemented by André Carregal as part of the Kepler Project with contributions from Renato Crivano and Danilo Tuler. Xavante 1.0 development was sponsored by Fábrica Digital and Hands.

Contact us

For more information please contact us. Comments are welcome!

You can also reach other Xavante developers and users on the Kepler Project mailing list.

Valid XHTML 1.0!

$Id: index.html,v 1.32 2006/09/20 13:11:27 carregal Exp $