snap-server-0.9.3.4: A fast, iteratee-based, epoll-enabled web server for the Snap Framework

Safe HaskellNone

Snap.Http.Server

Description

The Snap HTTP server is a high performance, epoll-enabled, iteratee-based web server library written in Haskell. Together with the snap-core library upon which it depends, it provides a clean and efficient Haskell programming interface to the HTTP protocol.

Synopsis

Documentation

simpleHttpServe :: MonadSnap m => Config m a -> Snap () -> IO ()Source

Starts serving HTTP requests using the given handler. This function never returns; to shut down the HTTP server, kill the controlling thread.

This function is like httpServe except it doesn't setup compression, reverse proxy address translation (via behindProxy), or the error handler; this allows it to be used from MonadSnap.

httpServe :: Config Snap a -> Snap () -> IO ()Source

Starts serving HTTP requests using the given handler, with settings from the Config passed in. This function never returns; to shut down the HTTP server, kill the controlling thread.

quickHttpServe :: Snap () -> IO ()Source

Starts serving HTTP using the given handler. The configuration is read from the options given on the command-line, as returned by commandLineConfig. This function never returns; to shut down the HTTP server, kill the controlling thread.

snapServerVersion :: ByteStringSource

A short string describing the Snap server version

setUnicodeLocale :: String -> IO ()Source

Given a string like "en_US", this sets the locale to "en_US.UTF-8". This doesn't work on Windows.