Common Lisp HTML
Permalink
Failed to load latest commit information.
docs Documentation: use current package HUNCHENTOOT instead of old TBNL Jul 15, 2018
test Compare on the path-string. Dec 8, 2016
url-rewrite remove more RCS/CVS headers Oct 30, 2011
www Documentation: use current package HUNCHENTOOT instead of old TBNL Jul 15, 2018
.gitignore Oops -- delete Emacs backup file, unintentionally committed. Jul 4, 2012
.pre-release.sh fix documentation glitches Sep 2, 2012
CHANGELOG Release 1.2.38 Dec 3, 2017
CHANGELOG_TBNL make hunchentoot and usocket internal May 26, 2008
README.md fixing links in readme Dec 21, 2017
acceptor.lisp Fix a typo. Feb 21, 2018
compat.lisp temporarily revert ipv6 changes Nov 30, 2014
conditions.lisp Treat errors during url decoding as bad requests. Feb 15, 2015
cookie.lisp Support max-age cookie attribute. Sep 14, 2013
easy-handlers.lisp decode URL considering content-type's charset Nov 26, 2014
headers.lisp Don't modify literal strings. Apr 19, 2017
hunchentoot.asd Release 1.2.38 Dec 3, 2017
lispworks.lisp Make check for stream timeouts more robust Aug 13, 2014
log.lisp Fix minor bug in WITH-LOG-STREAM. Feb 12, 2012
make-docstrings.lisp export parse-doc Feb 2, 2013
mime-types.lisp Added m4v mime type Oct 3, 2013
misc.lisp Merge pull request #83 from timrichardt/master Jul 6, 2015
packages.lisp Moves the defmethod to a defun May 3, 2015
release-checklist.txt documentation fixes Nov 28, 2011
reply.lisp remove RCS/CVS headers Oct 30, 2011
request.lisp parse-path: More thorough pathname validation. May 25, 2017
run-test.lisp put the blame where it belongs Oct 30, 2011
session.lisp Ignore malformed session IDs Jul 5, 2015
set-timeouts.lisp Remove debugging statements from set-timeouts.lisp Nov 18, 2012
specials.lisp speed up shutdown and avoid timeout on the listening socket Aug 14, 2016
ssl.lisp remove RCS/CVS headers Oct 30, 2011
taskmaster.lisp speed up shutdown and avoid timeout on the listening socket Aug 14, 2016
util.lisp Treat errors during url decoding as bad requests. Feb 15, 2015

README.md


Hunchentoot - The Common Lisp web server

Hunchentoot is a web server written in Common Lisp and at the same time a toolkit for building dynamic websites. As a stand-alone web server, Hunchentoot is capable of HTTP/1.1 chunking (both directions), persistent connections (keep-alive), and SSL.

Hunchentoot provides facilities like automatic session handling (with and without cookies), logging, customizable error handling, and easy access to GET and POST parameters sent by the client. It does not include functionality to programmatically generate HTML output. For this task you can use any library you like, e.g. CL-WHO or HTML-TEMPLATE.

Hunchentoot talks with its front-end or with the client over TCP/IP sockets and optionally uses multiprocessing to handle several requests at the same time. Therefore, it cannot be implemented completely in portable Common Lisp. It currently works with LispWorks and all Lisps which are supported by the compatibility layers usocket and Bordeaux Threads.

Hunchentoot comes with a BSD-style license so you can basically do with it whatever you want.

Complete documentation for Hunchentoot including details about how to install it can be found in the docs directory or at the project website.