ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
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 проектов



allnightlong wrote:
К сожалению, не все так хорошо, как хотелось бы.
Заработало чтение из репозитория (clone/pull), а также веб-интерфейс.
Однако не работает push:
hg push
pushing to http://hg.mysite.com/myproject/
searching for changes
abort: authorization failed

Пытался настроить basic-авторизацию - все то же самое:

hg push
pushing to http://hg.mysite.com/myproject/
http authorization required
realm: hg repo
user: username
password: <<-- ввожу неправильный пароль
http authorization required
realm: hg repo
user: username
password: <<-- ввожу правильный пароль
searching for changes
abort: authorization failed

вот конфиг nginx, который у меня получился:

   location / {
        fastcgi_pass  127.0.0.1:4080;

        fastcgi_param  PATH_INFO          $uri;

        fastcgi_param  QUERY_STRING       $query_string;
        fastcgi_param  REQUEST_METHOD     $request_method;
        fastcgi_param  CONTENT_TYPE       $content_type;
        fastcgi_param  CONTENT_LENGTH     $content_length;

        #fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;   <<--если
раскомментить эту строчку, то в веб-интервейсе все ссылки становятся, и все
вообще перестает работать
        fastcgi_param  REQUEST_URI        $request_uri;
        fastcgi_param  DOCUMENT_URI       $document_uri;
        fastcgi_param  DOCUMENT_ROOT      $document_root;
        fastcgi_param  SERVER_PROTOCOL    $server_protocol;

        fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
        fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

        fastcgi_param  REMOTE_ADDR        $remote_addr;
        fastcgi_param  REMOTE_PORT        $remote_port;
        fastcgi_param  SERVER_ADDR        $server_addr;
        fastcgi_param  SERVER_PORT        $server_port;
        fastcgi_param  SERVER_NAME        $server_name;
    }

По всей видимости (точно не уверен), данные авторизации не передаются fcgi
скрипту. Как победить - не знаю


6 декабря 2008 г. 3:21 пользователь Maxim Dounin <mdounin@xxxxxxxxxx>написал:

Hello!

Определение любого 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


думаю также как и предыдущую проблему - надо усановить необходимые парамзы User и Pass (или как там их) равные тем что приходят в заголовке



 




Copyright © Lexa Software, 1996-2009.