Falha de confirmação da subversão Nginx

2

Oi eu tenho dificuldade em cometer scripts php para subverison. Eu estou usando o servidor web Nginx para enviar solicitação para o servidor apache usando mod_proxy configuração de nginx para arquivos de confirmação, svn checkout e atualizações funciona bem.


server {
        listen  80;
        server_name svn.server;
        location / {
        access_log off;
        proxy_pass http://localhost:8081;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }


       location  ~ ^/repos/.*.php$  {

                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi_params;
        }


}

    
por Pawan 26.09.2013 / 18:38

1 resposta

0

O problema é que o bloco de localização com a configuração fastcgi para o PHP. Quando o SVN vai para commit, ele faz um PUT para um URI que termina no nome do arquivo para o arquivo, por exemplo,

PUT /svn-test-work/repositories/authz_tests-7/!svn/txr/1-1/A/D/G/rho

Onde o caminho dentro do repositório é /A/D/G/rho .

O motivo pelo qual você não está vendo um problema com a atualização e o check-out é que provavelmente você está usando um cliente ou servidor que ainda está usando atualizações em massa. As atualizações em massa significam, em vez de fazer uma solicitação HTTP GET para o arquivo, todo o conteúdo incluído em uma solicitação REPORT. Os clientes mais novos farão uma solicitação GET e também verão problemas com check-out e atualização.

Eu acho que a configuração do fastcgi do php é para algum tipo de UI baseada na web para o seu servidor SVN. Você precisa colocar isso em um URL único e não no mesmo URL dos seus repositórios.

    
por 04.11.2013 / 23:06

Tags