Re: gitweb with multiple projectroot ???
- From
- J. Bakshi <joydeep.bakshi@infoservices.in>
- Date
- Jun 6, 2012, 07:15 UTC
- Message-ID
- <20120606124538.4fdd8610@shiva.selfip.org>
- In-Reply-To
- <20120605174028.15e6af39@shiva.selfip.org>
>From the http://www.kernel.org/pub/software/scm/git/docs/v1.7.8/gitweb.html
I have found the following
[.........]
Here actual project root is passed to gitweb via GITWEB_PROJECT_ROOT environment variable from a web server, so you need to put the following line in gitweb configuration file (/etc/gitweb.conf in above example):
$projectroot = $ENV{'GITWEB_PROJECTROOT'} || "/pub/git";Note that this requires to be set for each request, so either $per_request_config must be false, or the above must be put in code referenced by $per_request_config;
[.........]
I have already set
$per_request_config = 'false';
at /etc/gitweb.conf but no effect.
I appreciate if anyone put me on the right track.
Thanks
On Tue, 5 Jun 2012 17:40:28 +0530 "J. Bakshi" <joydeep.bakshi@infoservices.in> wrote:
Show 55 quoted lines
> Dear list,
>
> My gitweb has been running since long with a single project root, which
> has been defined at the /etc/gitweb.conf through $projectroot variable.
>
> I need one more project root for gitweb, hence I have added this apache config
> ( not a vhost, but just calling by alias)
>
> ````````````````````
>
> SetEnv GIT_PROJECT_ROOT /home/newgit/
> SetEnv GIT_HTTP_EXPORT_ALL
> SetEnv GITWEB_CONFIG /home/newgit/gitweb.conf
> #git is strict about the authenticated SSL certificate only
> #disable the strict CA certificate check
> SetEnv GIT_SSL_NO_VERIFY
>
> AliasMatch ^/newgit/(.*/objects/[0-9a-f]{2}/[0-9a-f]{38})$ /home/newgit/$1
> AliasMatch ^/newgit/(.*/objects/pack/pack-[0-9a-f]{40}.(pack|idx))$ /home/newgit/$1
> ScriptAliasMatch \
> "(?x)^/newgit/(.*/(HEAD | \
> info/refs | \
> objects/info/[^/]+ | \
> git-(upload|receive)-pack))$" \
> /usr/lib/git-core/git-http-backend/$1
>
> #same location for gitweb
> Alias /newgit /usr/share/gitweb
> <Directory /usr/share/gitweb>
> Options FollowSymLinks +ExecCGI
> AddHandler cgi-script .cgi
> </Directory>
>
> #force https and authentication
> <LocationMatch "/newgit">
> # Require SSL connection for password protection.
> SSLRequireSSL
> AuthType Basic
> # Message to give to the committer
> AuthName "access requires a password"
> # File listing users with write (commit) access
> AuthUserFile /home/newgit/PASSWD
> Require valid-user
> </LocationMatch>
>
> `````````````````````````````````````````SetEnv
>
> But "SetEnv GITWEB_CONFIG" as well as other SetEnv ( like SetEnv GIT_SSL_NO_VERIFY )
> is not been taken and as an effect the gitweb processing the default /etc/gitweb.conf and going to the
> old projectroot.
>
> What am I missing here ? any clue ?
>
> Thanks
> --