1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>WSAPI</title>
<link rel="stylesheet" href="http://www.keplerproject.org/doc.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
<div id="container">
<div id="product">
<div id="product_logo">
<a href="http://wsapi.luaforge.net">
<img alt="WSAPI" src="wsapi.png"/>
</a>
</div>
<div id="product_name"><big><strong>WSAPI</strong></big></div>
<div id="product_description">Lua Web Server API</div>
</div> <!-- id="product" -->
<div id="main">
<div id="navigation">
<h1>WSAPI</h1>
<ul>
<li><strong>Home</strong></li>
<li><a href="manual.html">Manual</a></li>
<li><a href="libraries.html">Libraries</a></li>
<li><a href="license.html">License</a></li>
</ul>
</div> <!-- id="navigation" -->
<div id="content">
<h2>Overview</h2>
<p><em>WSAPI</em> is an API that abstracts the web server from Lua web applications. By coding
against WSAPI your application can run on any of the supported servers and
interfaces (currently CGI, FastCGI and Xavante, on Windows and UNIX-based systems).</p>
<p>WSAPI provides a set of helper libraries that help with request processing
and output buffering. You can also write applications that act as filters that
provide some kind of service to other applications, such as authentication,
file uploads, request isolation, or multiplexing.</p>
<p>WSAPI's main influence is Ruby's <a href="http://rack.rubyforge.org/">Rack</a> framework, but it was
also influenced by Python's <a href="http://wsgi.org/wsgi">WSGI</a> (PEP 333). It's not a direct
clone of either of them, though, and tries to follow standard Lua idioms.</p>
<p>WSAPI is free software and uses the same license as Lua 5.1</p>
<h2>Status</h2>
<p>Current version is 1.1. It was developed for Lua 5.1.</p>
<h2>Download</h2>
<p>WSAPI can be downloaded from its <a href="http://luaforge.net/projects/wsapi/">LuaForge</a> page.
You can also get WSAPI using <a href="http://luarocks.org">LuaRocks</a>:</p>
<pre class="example">
luarocks install wsapi
</pre>
<h2>CVS and Bug Tracker</h2>
<p>WSAPI CVS and bug tracker are available at its <a href="http://luaforge.net/projects/wsapi/">LuaForge</a> page.</p>
<h2>History</h2>
<p><strong>WSAPI 1.1</strong> [04/Feb/2009]</p>
<ul>
<li>Adds <em>options</em> table to <strong>wsapi.request.new</strong>, *delay_post* option delays
POST processing until <strong>req:parse<em>post</em>data()</strong> is called</li>
<li>Moves call to <strong>lfs.setmode</strong> from wsapi.common to wsapi.cgi</li>
<li>Adds <strong>wsapi.util.make_rewindable(<em>wsapi_env</em>)</strong> method - wraps <em>wsapi_env</em> in a new
environment that lets you process the POST data more than once.</li>
<li>Correctly handles PATH_TRANSLATED and SCRIPT_FILENAME in case the web server gets creative</li>
<li>Statically links the FastCGI version on Windows</li>
</ul>
<p><a href="http://wsapi.luaforge.net/1.0/"><strong>WSAPI 1.0</strong></a> [18/May/2008]</p>
<ul>
<li>First public version.</li>
<li>Includes CGI, FastCGI and Xavante WSAPI connectors.</li>
</ul>
<h2>Credits</h2>
<p>WSAPI was designed and developed by Fábio Mascarenhas and
André Carregal, and is maintained by Fábio Mascarenhas.</p>
<h2>Contact Us</h2>
<p>For more information please <a href="mailto:info-NO-SPAM-THANKS@keplerproject.org">contact us</a>.
Comments are welcome!</p>
<p>You can also reach us and other developers and users on the Kepler Project
<a href="http://luaforge.net/mail/?group_id=104">mailing list</a>. </p>
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<p><a href="http://validator.w3.org/check?uri=referer">Valid XHTML 1.0!</a></p>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>
|