Sto provando a installare gitlist su CentOS Linux (con gitolite nel caso che importi - ho rilassato le autorizzazioni sulle directory repo gestite da gitolite).gitlist non può ottenere nulla oltre l'elenco degli archivi
Ho estratto il tarball versione 0.3 da oggi da gitlist.org.
mio config.ini si presenta così:
client = '/usr/bin/git' ; Your git executable path
repositories = '/home/gitolite/repositories/' ; Path to your repositories
[app]
debug = true
; I don't know if baseurl is still needed..seems like my results are the same either way
baseurl = 'http://sub.example.com.com/gitlist' ; Base URL of the application
virtuale direttiva ospite in httpd.conf:
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName sub.example.com
<Directory "/var/www/html">
AllowOverride All
Options -Indexes
</Directory>
</VirtualHost>
.htaccess:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /var/www/html/gitlist/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L,NC]
AuthName "Git List"
AuthType Basic
AuthUserFile /var/www/.gitlistpwds
Require valid-user
</IfModule>
<Files config.ini>
order allow,deny
deny from all
</Files>
Con questa impostazione, andando a http://sub.example.com/gitlist risultati nel messaggio di errore del browser che dice che /index.php non esiste (cioè sta provando ad andare a /var/www/html/index.php)
In questo caso, se vado a http://sub.example.com/gitlist/index.php, l'elenco degli archivi (apparentemente) appare correttamente. Quando clicco su uno dei repository, qualcosa va storto quando tenta di eseguire, git. Ottengo:
Whoops, looks like something went wrong.
1/1 RuntimeException: Unknown option: -c
(std git usage message omitted)
Se rimuovo la regola di riscrittura da .htaccess, sono in grado di accedere alla pagina indice specificando index.php o meno. Ma in questo caso, quando clicco su un repo, si cerca di trovare il repo sotto la directory gitlist:
The requested URL /gitlist/testing.git/ was not found on this server.
Qualcuno può contribuire a risolvere questo pasticcio?
Perché la riscrittura? Metti la tua webapp gitlist dove vuoi, dichiara un alias e una directory, e dovrebbe essere sufficiente (come in https://github.com/VonC/compileEverything/blob/master/apache/env.conf.tpl#L41-L93) – VonC
La riscrittura fa parte dell'app (viene fornita con un .htaccess che la contiene). Non so perché è lì. L'ho provato senza, come ho indicato, e ho ancora avuto problemi. Stai dicendo che se lo sposto fuori dalla mia web directory il problema andrà via? –
Sto solo indicando altra tecnica per fare riferimento a una webapp senza dover utilizzare la riscrittura. Dovrò testare gitlist e vedere se funziona in questo modo. – VonC