This section explains how to configure some common webservers to
run gitweb. In all cases, /path/to/gitweb
in the examples is the
directory you ran installed gitweb in, and contains
gitweb_config.perl
.
If you've configured a web server that isn't listed here for
gitweb, please send in the instructions so they can be included
in a future release.
Apache as CGI
Apache must be configured to support CGI scripts in the directory
in which gitweb is installed. Let's assume that it is
/var/www/cgi-bin
directory.
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
<Directory "/var/www/cgi-bin">
Options Indexes FollowSymlinks ExecCGI
AllowOverride None
Order allow,deny
Allow from all
</Directory>
With that configuration the full path to browse repositories
would be:
http://server/cgi-bin/gitweb.cgi
Apache with mod_perl, via ModPerl::Registry
You can use mod_perl with gitweb. You must install
Apache::Registry (for mod_perl 1.x) or ModPerl::Registry (for
mod_perl 2.x) to enable this support.
Assuming that gitweb is installed to /var/www/perl
, the following
Apache configuration (for mod_perl 2.x) is suitable.
Alias /perl "/var/www/perl"
<Directory "/var/www/perl">
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options Indexes FollowSymlinks +ExecCGI
AllowOverride None
Order allow,deny
Allow from all
</Directory>
With that configuration the full path to browse repositories
would be:
http://server/perl/gitweb.cgi
Apache with FastCGI
Gitweb works with Apache and FastCGI. First you need to rename,
copy or symlink gitweb.cgi to gitweb.fcgi. Let's assume that
gitweb is installed in /usr/share/gitweb
directory. The following
Apache configuration is suitable (UNTESTED!)
FastCgiServer /usr/share/gitweb/gitweb.cgi
ScriptAlias /gitweb /usr/share/gitweb/gitweb.cgi
Alias /gitweb/static /usr/share/gitweb/static
<Directory /usr/share/gitweb/static>
SetHandler default-handler
</Directory>
With that configuration the full path to browse repositories
would be:
http://server/gitweb