ПРОЕКТЫ 


  АРХИВ 


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: $body_bytes_sent



On Fri, Jul 06, 2007 at 12:20:37AM +0400, Igor Sysoev wrote:

> On Wed, Jul 04, 2007 at 05:59:20PM +0600, Alex Kamedov wrote:
> 
> > часть лога
> > 
> > 2007/07/04 18:00:55 [notice] 1166#0: *76 "^(.*)/$" does not match
> > "/counter.php?bs=$body_bytes_sent", client: 192.168...
> > 
> > Вопрос: почему $body_bytes_sent может быть не определена?
> 
> Потому что $body_bytes_sent - это переменная ngx_http_log_module и
> на стадии post_action она не определена. Исправить не сложно.

Я оказался не прав.

Во-первых, в post_action не может быть перменных.
А во-вторых, $body_bytes_sent должна работать в

fastcgi_param BYTES_SENT $body_bytes_sent;

Поэтому достаточно сделать только:

-        post_action /counter.php?bs=$body_bytes_sent;
+        post_action /counter.php;

> > 2007/7/4, Alex Kamedov <kamedov@xxxxxxxxx>:
> > >
> > >Здравствуйте.
> > >
> > >Пытаюсь реализовать контролируемое скачивание следующим образом
> > >
> > > location ~* ^/media/.+\.(mp3|wma|ogg|ape|flac)$ {
> > >    set $orig_uri $uri;
> > >    set $orig_args $args;
> > >    set $orig_ip $remote_addr;
> > >    set $orig_query $query_string;
> > >    set $orig_xforw $http_x_forwarded_for;
> > >    post_action /counter.php?bs=$body_bytes_sent;
> > >}
> > >
> > >
> > > location = /counter.php {
> > >     internal;
> > >
> > >
> > >fastcgi_param SCRIPT_FILENAME/srv/www/mp3/public_html$fastcgi_script_name;
> > >     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 HTTP_RANGE $http_range;
> > >     fastcgi_param REMOTE_ADDR $remote_addr;
> > >     fastcgi_param URI  $request_uri;
> > >     fastcgi_param BYTES_SENT $body_bytes_sent;
> > >
> > >#     include /usr/local/nginx/conf/fastcgi.conf;
> > >
> > >            fastcgi_pass   127.0.0.1:8888;
> > >            fastcgi_index  index.php;
> > > }
> > >
> 
> -- 
> Игорь Сысоев
> http://sysoev.ru
> 

-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.