Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[2]: Помогите с rewrite
-----Original Message-----
From: Igor Sysoev <is@xxxxxxxxxxxxx>
To: nginx-ru@xxxxxxxxx
Date: Thu, 22 Jan 2009 18:08:30 +0300
Subject: Re: Помогите с rewrite
> On Thu, Jan 22, 2009 at 06:01:14PM +0300, Anton Nagorniy wrote:
>
> >
> >
> > -----Original Message-----
> > From: Igor Sysoev <is@xxxxxxxxxxxxx>
> > To: nginx-ru@xxxxxxxxx
> > Date: Thu, 22 Jan 2009 17:48:59 +0300
> > Subject: Re: Помогите с rewrite
> >
> > > On Thu, Jan 22, 2009 at 05:45:02PM +0300, Anton Nagorniy wrote:
> > >
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Igor Sysoev <is@xxxxxxxxxxxxx>
> > > > To: nginx-ru@xxxxxxxxx
> > > > Date: Thu, 22 Jan 2009 17:23:54 +0300
> > > > Subject: Re: Помогите с rewrite
> > > >
> > > > > On Thu, Jan 22, 2009 at 03:51:26PM +0300, Anton Nagorniy wrote:
> > > > >
> > > > > > rewrite ^/services/([0-9a-zA-Z_-]*)\.py(.*)?$ $1.py?service=$1$2?
> > > > > > last;
> > > > > >
> > > > > > Объясните пожалуйста, почему результатом правила есть всегда $1.py,
> > > > > > а service=$1$2 почему-то отсутствует в результируещем url?
> > > > >
> > > > > - rewrite ^/services/([0-9a-zA-Z_-]*)\.py(.*)?$ $1.py?service=$1$2?
> > > > > last;
> > > > > + rewrite ^/services(/[0-9a-zA-Z_-]*)\.py(.*)?$ $1.py?service=$1$2?
> > > > > last;
> > > > >
> > > > > > 2009/01/20 14:59:40 [error] 50993#0: *1 open()
> > > > > > "/usr/local/nginx/htmllogin.py" failed (2: No such file or
> > > > > > directory), client: 192.168.50.1, server: localhost, request: "GET
> > > > > > /services/login.py HTTP/1.1", host: "192.168.50.5"
> > > > > >
> > > > > >
> > > > > > /usr/local/nginx/htmllogin.py - это хорошо, он почему здесь нет
> > > > > > ?service=login
> > > > >
> > > > > Потому что из-за неправильного rewrite этот запрос обрабатывается
> > > > > как статический файл.
> > > > >
> > > > >
> > > > > --
> > > > > Игорь Сысоев
> > > > > http://sysoev.ru
> > > > >
> > > > + rewrite ^/services(/[0-9a-zA-Z_-]*)\.py(.*)?$ $1.py?service=$1$2?
> > > > last;
> > > >
> > > > Этот rewrite тоже неверный? Результат тот же.
> > >
> > > В смысле - open() "/usr/local/nginx/html/login.py" failed (2: No such
> > > file or directory) ? А обработчик .py есть ?
> >
> > Есть. Я специально закоментировал proxy pass потому, что в таком случае
> > невидно ошибки в error.log. Мне очень важно чтобы передались параметры с
> > помощью GET, судя по логам они не передаются. Понятия не имею почему.
>
> А как выглядит конфиг ?
>
> То, что уходит на бэкенд можно увидеть в error_log'е при 502 ошибке -
> нужно опуститт бэкенд, сделать запрос и посмотреть на upstream в error_log.
>
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
В бекенд всё проксируется. Я проверил. Но в get параметрах ничего.
Вот такое правило для прокси
location ~ \.(py) {
proxy_pass http://127.0.0.1:1026;
}
|