Tcl Library Source Code
Help: http
Not logged in
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2018 Conference, Houston/TX, US, Oct 15-19
Send your abstracts to tclconference@googlegroups.com or submit via the online form
by Aug 20.

The "http" command:

Usage: fossil http ?REPOSITORY? ?OPTIONS?

Handle a single HTTP request appearing on stdin.  The resulting webpage
is delivered on stdout.  This method is used to launch an HTTP request
handler from inetd, for example.  The argument is the name of the
repository.

If REPOSITORY is a directory that contains one or more repositories,
either directly in REPOSITORY itself or in subdirectories, and
with names of the form "*.fossil" then a prefix of the URL pathname
selects from among the various repositories.  If the pathname does
not select a valid repository and the --notfound option is available,
then the server redirects (HTTP code 302) to the URL of --notfound.
When REPOSITORY is a directory, the pathname must contain only
alphanumerics, "_", "/", "-" and "." and no "-" may occur after a "/"
and every "." must be surrounded on both sides by alphanumerics or else
a 404 error is returned.  Static content files in the directory are
returned if they match comma-separate GLOB pattern specified by --files
and do not match "*.fossil*" and have a well-known suffix.

The --host option can be used to specify the hostname for the server.
The --https option indicates that the request came from HTTPS rather
than HTTP. If --nossl is given, then SSL connections will not be available,
thus also no redirecting from http: to https: will take place.

If the --localauth option is given, then automatic login is performed
for requests coming from localhost, if the "localauth" setting is not
enabled.

Options:
  --baseurl URL    base URL (useful with reverse proxies)
  --files GLOB     comma-separate glob patterns for static file to serve
  --localauth      enable automatic login for local connections
  --host NAME      specify hostname of the server
  --https          signal a request coming in via https
  --in FILE        Take input from FILE instead of standard input
  --ipaddr ADDR    Assume the request comes from the given IP address
  --nocompress     do not compress HTTP replies
  --nodelay        omit backoffice processing if it would delay process exit
  --nojail         drop root privilege but do not enter the chroot jail
  --nossl          signal that no SSL connections are available
  --notfound URL   use URL as "HTTP 404, object not found" page.
  --out FILE       write results to FILE instead of to standard output
  --repolist       If REPOSITORY is directory, URL "/" lists all repos
  --scgi           Interpret input as SCGI rather than HTTP
  --skin LABEL     Use override skin LABEL
  --th-trace       trace TH1 execution (for debugging purposes)
  --usepidkey      Use saved encryption key from parent process.  This is
                   only necessary when using SEE on Windows.

See also: cgi, server, winsrv