Configuração NGINX e CGit

1

Estou tentando configurar o CGit e o NGINX. Eu estou quase lá, mas eu tenho um problema com a regra de reescrever no arquivo conf do meu NGINX.

Atualmente, tenho isto:

server {
    listen       80;
    server_name  cgit.mydomain.com;
    index cgit.cgi;
    gzip off;

    root /usr/share/webapps/cgit;

    include fastcgi_params;
    fastcgi_param   SCRIPT_FILENAME $document_root/cgit.cgi;

    location / {
        try_files $uri @cgit;
    }

    location @cgit {
        auth_basic "Restricted";
        auth_basic_user_file /path/to/my/password_file;

        gzip off;
        rewrite ^/([^/]+/.*)?$ /cgit.cgi?url=$1 break;
        fastcgi_pass    fcgiwrap;
    }
}

Eu entendo que a URL quando eu estou olhando para demo_repo_1.git deve parecer com http://cgit.mydomain.com/cgit.cgi?url=gitolite-admin.git (ou algo similar?), mas parece com http://cgit.mydomain.com/cgit.cgi/gitolite-admin.git/ , e não funciona (como em cgit.cgi O script não pode ler os dados corretos do URL e não pode mostrar as informações corretas sobre meus repositórios.

Além disso, se eu forçar o URL que acho que deveria ser (copiar e colar o URL "correto" no meu navegador), o script cgit.cgi será baixado.

Posso obter ajuda com essa regra de reescrita, por favor?

    
por alexandernst 08.04.2013 / 10:38

0 respostas