mohws: Modular Haskell Web Server

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain]

A web server with a module system and support for CGI. Based on Simon Marlow's original Haskell Web Server.


[Skip to ReadMe]

Properties

Versions0.1, 0.2, 0.2.0.1, 0.2.1, 0.2.1.1, 0.2.1.2, 0.2.1.3, 0.2.1.4, 0.2.1.5, 0.2.1.6, 0.2.1.6
Change logNone available
Dependenciesbase (>=4.3 && <5), bytestring (>=0.9 && <0.11), containers (>=0.1 && <0.7), data-accessor (==0.2.*), directory (>=1.0 && <1.4), explicit-exception (==0.1.*), filepath (>=1.1 && <1.5), ghc (==6.8.*), html (==1.0.*), HTTP (>=4000.0.4 && <4001), network (==2.6.*), network-uri (==2.6.*), old-locale (==1.0.*), old-time (>=1.0 && <1.2), parsec (>=2.1 && <3.2), process (>=1.0 && <1.7), transformers (>=0.2 && <0.6), unix (>=2.3 && <2.8), utility-ht (>=0.0.3 && <0.1) [details]
LicenseBSD-3-Clause
CopyrightSimon Marlow, Bjorn Bringert
AuthorSimon Marlow, Bjorn Bringert <bjorn@bringert.net>
MaintainerHenning Thielemann <webserver@henning-thielemann.de>
CategoryWeb
Home pagehttp://code.haskell.org/mohws/
Source repositoryhead: darcs clone http://code.haskell.org/mohws/
this: darcs clone http://code.haskell.org/mohws/ --tag 0.2.1.6
Executableshws-dyn, hws
UploadedSat Sep 1 07:38:48 UTC 2018 by HenningThielemann

Modules

[Index]

Flags

NameDescriptionDefaultType
dynamic

Build server with dynamically loaded plugins

DisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for mohws-0.2.1.6

[back to package description]
This is a web server written in Haskell, based on Simon Marlow's original
Haskell Web Server. It has a module system and can run CGI programs. 

The original program is described in:
Developing a high-performance web server in Concurrent Haskell,
Simon Marlow, 
Journal of Functional Programming, 12(4+5):359--374, July 2002
[http://www.haskell.org/~simonmar/papers/web-server-jfp.pdf]

The original version available from:
[http://cvs.haskell.org/cgi-bin/cvsweb.cgi/fptools/hws/]

A more conservative update of the original HWS is available from:
[http://darcs.haskell.org/hws/]


=== Build ===

You can use either Cabal or make to build HWS.

==== With Cabal ====

{{{pre:
$ runghc Setup.hs configure
$ runghc Setup.hs build
}}}

This produces the binary ``dist/build/hws/hws``.

==== With make ====

{{{pre:
$ make
}}}

This produces the binary ``./hws``.


=== Configure ===

There is a config file example in ``conf/httpd.conf``. The server should run with the 
example settings, but it would not be very usable. See the example file
for more information about the configuration parameters.


=== Run ===

{{{pre:
usage: hws [option...]
  -f filename   --config=filename        default: "conf/httpd.conf"
  -d directory  --server-root=directory  default: "."
}}}

The server root is the directory which hws uses as base for the
configuration and log file paths.

Files are served from the DocumentRoot.


==== CGI ====

Files which have the filename suffix ``.cgi`` are run as CGI programs.


==== Debug ====

Look in the error log file (``log/error.log`` by default) for any error messages.
If this does not help, try setting LogLevel to debug (in the config file).