Web/Libraries/CGI: Difference between revisions
m (Adding info box) |
(Added SCGI) |
||
Line 59: | Line 59: | ||
* Hackage: http://hackage.haskell.org/package/fastcgi | * Hackage: http://hackage.haskell.org/package/fastcgi | ||
== SCGI == | |||
This library lets you write SCGI programs. This package reuses the cgi package API, making it very easy to port CGI programs to SCGI. | |||
[http://www.mems-exchange.org/software/scgi/ SCGI] is a simpler alternative to FastCGI for writing CGI-like programs in persistent processes, external to the web server. SCGI is less featureful than FastCGI, but has the advantage that it does not require an external library. | |||
Install, import Network.SCGI, and use runSCGI. Everything else is then done inside a CGI monad as above. | |||
'''License:''' BSD3 | |||
'''Copyright:''' (c) Eric Sessoms 2007, (c) Stephen Blackheath 2008 | |||
'''Author:''' Eric Sessoms <nubgames@gmail.com>, Stephen Blackheath <http://blacksapphire.com/antispam/> | |||
'''Maintainer:''' http://blacksapphire.com/antispam/ | |||
'''Package & repositories''' | |||
* Hackage: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/scgi |
Revision as of 13:42, 3 October 2010
cgi
Simple Library for writing CGI programs. This version of the library is for systems with version 2.0 or greater of the network package. This includes GHC 6.6 and later. Features include:
- Access to CGI parameters (e.g. form input) from both GET and POST requests.
- Access to CGI environment variables.
- Ability to set arbitrary response headers.
- Support for HTTP cookies.
- Efficient file upload support.
- Wrapper
License: BSD3
Copyright: Bjorn Bringert, Andy Gill, Anders Kaseorg, Ian Lynagh, Erik Meijer, Sven Panne, Jeremy Shaw
Author: Bjorn Bringert
Maintainer: Anders Kaseorg <andersk@mit.edu>
Home page: http://andersk.mit.edu/haskell/cgi/
Package & repositories
- Hackage: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/cgi
- Git: http://andersk.mit.edu/gitweb/haskell/cgi.git
direct-fastcgi
This package is a native implementation of the FastCGI protocol, allowing Haskell to work with any webserver that supports it. It makes no attempt to imitate the interface of the cgi-3000 and fastcgi-3000 packages, because that API is tied too heavily to legacy interfaces, as with its handling of exceptions, logging, and time. Its advantage over those packages is primarily in the area of clean exception management and better control structure which allows more versatility in processing requests which are not simple GETs. In particular, POST of large files should be possible, as should server-push responses which return content a piece at a time. Also, of course, as a native implementation, there is no dependency on a C library, which simplifies the install process.
License: BSD3
Copyright: Copyright (c) 2009 Dan Knapp
Author: Dan Knapp
Maintainer: dankna@gmail.com
Home page: http://dankna.com/software/
Package & repositories
fastcgi
This library lets you write FastCGI programs. This package reuses the cgi package API, making it very easy to port CGI programs to FastCGI. The FastCGI C development kit is required to build this library.
License: BSD3
Copyright: Bjorn Bringert, Lemmih
Maintainer: Chris Done <chrisdone@gmail.com>
Package & repositories
SCGI
This library lets you write SCGI programs. This package reuses the cgi package API, making it very easy to port CGI programs to SCGI.
SCGI is a simpler alternative to FastCGI for writing CGI-like programs in persistent processes, external to the web server. SCGI is less featureful than FastCGI, but has the advantage that it does not require an external library.
Install, import Network.SCGI, and use runSCGI. Everything else is then done inside a CGI monad as above.
License: BSD3
Copyright: (c) Eric Sessoms 2007, (c) Stephen Blackheath 2008
Author: Eric Sessoms <nubgames@gmail.com>, Stephen Blackheath <http://blacksapphire.com/antispam/>
Maintainer: http://blacksapphire.com/antispam/
Package & repositories