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:
-Dmacro=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.
-ffile- 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
gotwebdas 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
gotwebdcan 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
gotwebdand httpd(8). The default location for repositories published bygotwebdis /var/www/got/public. - Git repositories served by
gotwebdshould 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
gotwebdto 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
gotwebdlistening 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>