This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

<<<<<<< HEAD
Xavante 2.2.0
=======
Xavante 2.2.1
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
http://keplerproject.org/xavante/
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 WSAPI handler. Those are used for general files, URI remapping
and WSAPI applications respectively.
Xavante is free software and uses the same license as Lua.
Xavante can be downloaded from its LuaForge page.
You can also install Xavante using LuaRocks:
luarocks install xavante
The Xavante package provides just the Xavante libraries. To see Xavante in action
install wsapi-xavante from LuaRocks.
Dependencies
Xavante dependencies can be separated by the used handlers:
Xavante Core
* Lua 5.1.4
* Copas 1.1.6
* LuaSocket 2.0
File Handler (optional)
* LuaFileSystem 1.5
The portability of Xavante is determined by its binary components
(LuaSocket and LuaFileSystem) and Lua itself. The other components are written
in Lua and are as portable as Lua itself.
History
<<<<<<< HEAD
=======
Xavante 2.2.1 [21/Oct/2010]
* allow 0 as a port value, so the OS assigns one dynamically (contributed by Tim Niemueller
* bugfixes in CGILua handler
>>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac
Xavante 2.2.0 [18/Mar/2010]
* xavante.cgiluahandler now works with WSAPI 1.2/1.3 without needing kepler_init
Xavante 2.1.0 [20/Oct/2009]
* Fixes security bug on filehandler with ".." used in paths (access to files outside the doc root)
* Added "reload" option to xavante.cgiluahandler, to force new state for every request Xavante 2.0.1 [06/Mar/2009]
* Fixes bug [#9094] keep-alive connections don't clear cached data between requests (bug report and patch by John Passaniti)
* redirecthandler now treats query strings correctly (bug report by ændrük).
Xavante 2.0 [23/May/2008]
* New WSAPI based cgiluahandler
* Fixed a bug on SAPI.redirect that was not setting the statusline correctly
* First version using LuaRocks
Xavante 2.0 Beta [21/Nov/2007]
* Xavante 2.0 Beta is distributed as a Lua module, the command line and Windows launchers are now part of the Kepler distribution
* If you are using Kepler, it is strongly suggested that you replace your previous Xavante config.lua file with the new one installed by Kepler
* Allow the definition of the HTTP status by using a "Status" header
* Added the Connection: close header to every CGILua request in order to avoid confusions on the content size (patch by Ignacio Burgueño)
* xavante.cgiluahandler now accepts an optional table with global names to be passed to the Ring where the request is processed. If this option is not present it looks for a RINGS_CGILUA_GLOBALS global and uses it.
* Fixed bug [#1812] - SAPI.Response.Write was not sending all its arguments but the first one (bug found by Ignacio Burgueño)
Xavante 1.3.1 [31/Aug/2007]
* Replaces the use of the cgi table by cgilua.POST and cgilua.QUERY in the examples
* Correcting the behavior of coxpcall when used with C functions (patch by Ignacio Burgueño)
* Correcting issues with chucked encoding. Now it only sends the Transfer-Encoding header when necessary. Correcting the handling of cached files in filehandler. (patches by Ignacio Burgueño)
* New /web structure, using a dynamic index to documentation in /web/doc/modulename
Xavante 1.3 [24/Aug/2007]
* Uses Lua 5.1
* Fixed headers to send the header twice if it's defined twice, instead of concat'ing with commas (previous behavior was broken when sending cookies)
* Removed the restriction of only handling URLs that corresponded to files in the filesystem. Now cgilua.dispatcher can map URLs like /apps/wiki/... into whatever it needs. Patch by Mauricio Bomfim.
* Corrected the PATH_INFO handling for cgilua.dispatcher
* Code refactoring by Thomas Harning (Bug [#767])
* Better error handling, using io.stderr instead of print
* Added the correct prefix to error codes (by Zachary P. Landau)
* Support for caching based on last-modified implemented by Zachary P. Landau, based on the design of HTTP.lua (by PA)
* Content Encoding handling using encoding.lua as a configuration file, added svgz encoding and content-type
* Fixed bug [#510] filehandler does not send correct headers for a 404 error (found by Matthew Burke)
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 2.0 and 1.3 was implemented by Javier Guerra, André Carregal,
and Fábio Mascarenhas with the help of Ignacio Burgueño, Zachary P. Landau,
Mauricio Bomfim, Matthew Burke, Thomas Harning and others.
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.
<<<<<<< HEAD
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. =======
Xavante 1.0 development was sponsored by Fábrica Digital and Hands. >>>>>>> eb677c01829abf06a9644ec88067ebd873c729ac

About

Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages