Re: Make Gitweb behave like Apache mod_userdir
flat view
From: Sylvain Rabot <hidden>
Date: 2016-06-15 22:47:44
For starters I think overriding the /~<user> (specifically the ~ here) is going to be a bad idea no matter what you do and gives the wrong impression about what / how the request is being responded to. You might want to try and pick a different delimiter or re-work the rule so that you could have something like: http://git.kernel.org/<gitweb urls> http://git.kernel.org/user/<gitweb urls> Your also, likely, going to need to take into account things like index.cgi and gitweb.cgi in the url as things like: http://git.kernel.org/?p=bluetooth/bluez-gnome.git;a=summary http://git.kernel.org/gitweb.cgi?p=bluetooth/bluez-gnome.git;a=summary
<VirtualHost git.abstraction.fr:80>
ServerAdmin webmaster@abstraction.fr
ServerName git.abstraction.fr:80
DocumentRoot /var/www/sylvain/git.abstraction.fr/html
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel debug
CustomLog /var/www/sylvain/git.abstraction.fr/log/access.log combined
ErrorLog /var/www/sylvain/git.abstraction.fr/log/error.log
ServerSignature On
RewriteEngine on
RewriteLog /var/www/sylvain/git.abstraction.fr/log/rewrite.log
RewriteLogLevel 3
RewriteRule ^/$
/cgi-bin/gitweb.cgi [QSA,L,PT]
RewriteRule ^/gitweb.cgi$
/cgi-bin/gitweb.cgi [QSA,L,PT]
RewriteRule ^/\~([^\/]+)/?$
/cgi-bin/gitweb.cgi
[QSA,E=GITWEB_PROJECTROOT:/home/$1/public_git/,L,PT]
RewriteRule ^/\~([^\/]+)/gitweb.cgi$
/cgi-bin/gitweb.cgi
[QSA,E=GITWEB_PROJECTROOT:/home/$1/public_git/,L,PT]
RewriteRule ^/users/([^\/]+)/?$
/cgi-bin/gitweb.cgi
[QSA,E=GITWEB_PROJECTROOT:/home/$1/public_git/,L,PT]
RewriteRule ^/users/([^\/]+)/gitweb.cgi$
/cgi-bin/gitweb.cgi
[QSA,E=GITWEB_PROJECTROOT:/home/$1/public_git/,L,PT]
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin/">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
Alias /gitweb /usr/share/gitweb/
<Directory "/usr/share/gitweb/">
AllowOverride None
Options +MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
You can test here :
http://git.abstraction.fr/
http://git.abstraction.fr/gitweb.cgi
http://git.abstraction.fr/~sylvain/
http://git.abstraction.fr/~sylvain/gitweb.cgi
http://git.abstraction.fr/users/sylvain/
http://git.abstraction.fr/users/sylvain/gitweb.cgi
The dns record is fresh. If your dns is not up to date the ip is 88.191.254.60.