NAME
gotwebd
—
Game of Trees FastCGI server for web
browsers
SYNOPSIS
gotwebd |
[-dnv ] [-D
macro=value]
[-f file] |
DESCRIPTION
gotwebd
is a FastCGI server program which
can display the contents of Git repositories via a web browser. The program
has been designed to work out of the box with the
httpd(8) web server.
gotwebd
provides the following
options:
-D
macro=value- Define macro to be set to value. Overrides the definition of macro in the configuration file.
-d
- Do not daemonize. Send log output to stderr.
-f
file- Set the path to the configuration file. If not specified, the file /etc/gotwebd.conf will be used.
-n
- Parse the configuration file, report errors if any, and exit.
-v
- Verbose mode. Verbosity increases if this option is used multiple times.
Enabling gotwebd
requires the following
steps:
- The httpd.conf(5)
configuration file must be adjusted to run
gotwebd
as a FastCGI helper program. The EXAMPLES section below contains an appropriate configuration file sample. - httpd(8) must be enabled and started:
# rcctl enable httpd # rcctl start httpd
- Optionally, the run-time behaviour of
gotwebd
can be configured via the gotwebd.conf(5) configuration file. - Git repositories must be created at a suitable location inside
the web server's chroot(2) environment. These repositories should
not be writable by
the user ID shared between
gotwebd
and httpd(8). The default location for repositories published bygotwebd
is /var/www/got/public. - Git repositories served by
gotwebd
should be kept up-to-date with a mechanism such asgot fetch
, git-fetch(1), or rsync(1), scheduled by cron(8).
FILES
- /etc/gotwebd.conf
- Default location of the gotwebd.conf(5) configuration file.
- /var/www/got/public/
- Default location for Git repositories served by
gotwebd
. This location can be adjusted in the gotwebd.conf(5) configuration file. - /var/www/bin/gotwebd/
- Directory containing statically linked got(1) helper programs which are run by
gotwebd
to read Git repositories. - /var/www/htdocs/gotwebd/
- Directory containing HTML, CSS, and image files used by
gotwebd
. - /var/www/run/gotweb.sock
- Default location for the
gotwebd
listening socket. - /tmp/
- Directory for temporary files created by
gotwebd
.
EXAMPLES
Example configuration for httpd.conf(5):
types { include "/usr/share/misc/mime.types" } server "example.com" { listen on * port 80 root "/htdocs/gotwebd" location "/" { fastcgi socket "/run/gotweb.sock" } }
Hosting multiple gotwebd
instances on the
same HTTP server under different path prefixes, with the first reached via
the default UNIX-domain socket, the second
configured to listen on localhost port 9000:
server "example.com" { listen on * port 80 location "/gotwebd-unix/" { fastcgi socket "/run/gotweb.sock" } location "/gotwebd-unix/*" { root "/htdocs/gotwebd" request strip 1 } location "/gotwebd-tcp/" { fastcgi socket tcp localhost 9000 } location "/gotwebd-tcp/*" { root "/htdocs/gotwebd" request strip 1 } }
SEE ALSO
got(1), git-repository(5), gotwebd.conf(5), httpd.conf(5), httpd(8)
AUTHORS
Omar Polo
<op@openbsd.org>
Stefan Sperling
<stsp@openbsd.org>
Tracey Emery
<tracey@traceyemery.net>