Native webserver that acts as a library.
This package is a native implementation of the HTTP and HTTPS protocols. It lives as a library, exporting an interface reminiscent of CGI or FastCGI. Thus policy on how namespace is mapped to files and/or scripts is entirely up to the client application.
This package is partially compatible with direct-fastcgi by the same author, but is intended more by way of a replacement for it than a companion to it, and makes several design decisions differently. The biggest is the use of MonadControlBase for exceptions.
- Version 0.6
Substantial reworking of MVar handling, using safer primitives to be much more robust in the face of exceptions in pure code.
- Version 0.5.3
Actually works with extension headers, by admitting the reality that they can occur anytime and not just with an entity.
- Version 0.5.2
Actually works with daemonization, by using a feature of direct-daemon added for this purpose to open the socket after forking but before dropping privileges.
- Version 0.5.1
Uses SafeSemaphore, which is the future, rather than QSem from base, which is deprecated.
- Version 0.5.0.1
This preliminary release is a preview to gauge community interest. Not even all major features are implemented; things that exist only as stubs include encryption, compression, chunking, and reading back cookies. Nonetheless it may be useful if run behind a reverse proxy that provides the missing features transparently, such as Apache.