Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: mercurial+ nginx: настро	йка вебморды для mercurial проектов
 
 
Hello!
On Sat, Dec 06, 2008 at 01:29:12AM +0300, allnightlong wrote:
> Хочу стало быть настроить вебморду для  mercurial репозиториев. Использую
> hgwebdir.fcgi из поставки меркурия.
> Непосредственно вебморда работает нормально, но проблема в том, что через
> nginx не получается провести ни одной mercurial операции (clone/push/pull).
> Вот моя система: debian lenny, nginx 0.6.34, mercurail 1.0.1.
> 
> Конфиг nginx.conf
> 
> server {
>     server_name hg.mysite.com;
>     include        /etc/nginx/fastcgi_params;
> 
>     location / {
>         fastcgi_pass  127.0.0.1:4080;
>         fastcgi_param  PATH_INFO $uri;
> 
>         fastcgi_param  SERVER_PORT        $server_port;
>         fastcgi_param  SERVER_NAME        $server_name;
>         fastcgi_param  SERVER_PROTOCOL    $server_protocol;
>         fastcgi_param  REQUEST_METHOD     $request_method;
Определение любого fastcgi_param отменяет наследование с 
предыдущих уровней (стандартное поведение всех директив, задающих 
массивы).  Т.е. "include /etc/nginx/fastcgi_params;" в данном 
конфиге - просто ничего не делает.
Как результат - $query_string в fastcgi не передаётся, и hgwebdir.fcgi
из-за этого не видит команд протокола.
Надо написать что-нибудь вроде
    location / {
        fastcgi_pass ...
        fastcgi_param  PATH_INFO  $uri;
        include  /etc/nginx/fastcgi_params;
    }
Maxim Dounin
 
 |