Updated 2012-06-07 09:42:25 by dkf

Tclhttpd decodes URLs into references to functional modules called domains, each of which is free to interpret the browser's [httpd] protocol interaction (including URLs) in any way it likes.

Access control and Basic authentication is performed before dispatching to a domain.

The following domains are standard with Tclhttpd:

Other domains can be created per-site, by including the domain handling code in the custom directory.

  • examples here

A new domain can be registered by means of the Url_PrefixInstall command, which maps a URL prefix to a tcl proc which handles all URLs with the given prefix.

Tclhttpd can roughly be functionally decomposed into

  1. http protocol interaction to get the request - http.tcl
  2. decoding a url - url.tcl
  3. Domain handling to generate content
  4. http protocol interaction to deliver the content - http.tcl