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] [Publish]

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


[Skip to Readme]

Properties

Versions 0.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.7, 0.2.1.7, 0.2.1.8, 0.2.1.9
Change log None available
Dependencies base (>=4.3 && <5), bytestring (>=0.9 && <0.11), containers (>=0.1 && <0.7), data-accessor (>=0.2 && <0.3), directory (>=1.0 && <1.4), explicit-exception (>=0.1 && <0.2), fail (>=4.9 && <4.10), filepath (>=1.1 && <1.5), ghc (>=6.8 && <6.9), html (>=1.0 && <1.1), HTTP (>=4000.0.4 && <4001), mohws, network (>=2.6 && <2.7), network-uri (>=2.6 && <2.7), old-locale (>=1.0 && <1.1), 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]
License BSD-3-Clause
Copyright Simon Marlow, Bjorn Bringert
Author Simon Marlow, Bjorn Bringert <bjorn@bringert.net>
Maintainer Henning Thielemann <webserver@henning-thielemann.de>
Category Web
Home page http://code.haskell.org/mohws/
Source repo head: darcs get http://code.haskell.org/mohws/
this: darcs get http://code.haskell.org/mohws/ --tag 0.2.1.7
Uploaded by HenningThielemann at 2021-03-16T20:07:01Z

Modules

[Index] [Quick Jump]

Flags

Automatic Flags
NameDescriptionDefault
dynamic

Build server with dynamically loaded plugins

Disabled

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

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for mohws-0.2.1.7

[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).