ПРОЕКТЫ 


  АРХИВ 


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 всегда 0, но не в логах.



В Птн, 27/05/2011 в 11:34 +0400, Igor Sysoev пишет:
> On Fri, May 27, 2011 at 03:26:00AM -0400, stopka wrote:
> > Стоит nginx 0.8.53 и php-fpm 5.3.6
> > Конфиг nginx (Весь кофиг не буду
> > приводить, приведу отрывок):
> > 
> > log_format main
> > '$remote_addr - $remote_user [$time_local] '
> > '"$request" $status $bytes_sent --->$body_bytes_sent<--- '
> > '"$http_referer" "$http_user_agent" '
> > '"$gzip_ratio"';
> > 
> > server {
> > listen 80;
> > server_name server.local;
> > 
> > access_log /www/server/www/logs/access.log main;
> > error_log /www/server/www/logs/error.log;
> > 
> > 
> > location ~* \.php$ {
> > root /www/server/www/htdocs/;
> > 
> > fastcgi_pass unix:/var/run/php-fpm.socket;
> > 
> > fastcgi_param SCRIPT_FILENAME
> > /www/server/www/htdocs$fastcgi_script_name;
> > fastcgi_param HTTP_X_REAL_IP $remote_addr;
> > fastcgi_param BBBBBBB $body_bytes_sent;
> > include /etc/nginx/fastcgi_params;
> > }
> > 
> > location ~ /.svn/ {
> > deny all;
> > }
> > }
> > 
> > Все работает, но есть один нюанс. В access
> > логах вижу значения $body_bytes_sent. Вполне
> > себе корректное, а в PHP в $_SERVER['BBBBBBB'] вижу
> > 0. С чем может быть это связано?
> 
> Это связано с тем, что на момент отправки запроса PHP
> nginx ещё не знает, сколько байт PHP ему вернёт.
> 
> 

Я немного изменил конфигурацию.

В конфиге nginx:

location ~ ^/(test_post)\.php$ {
    fastcgi_pass    unix:/var/run/php-fpm.socket;
    fastcgi_param
SCRIPT_FILENAME  /www/server/www/$fastcgi_script_name;
    fastcgi_param   BBBBBBB $body_bytes_sent;
    include         /etc/nginx/fastcgi_params;
}

location ~ ^/(test)\.php$ {
    fastcgi_pass    unix:/var/run/php-fpm.socket;
    fastcgi_param
SCRIPT_FILENAME  /www/server/www/$fastcgi_script_name;
    include         /etc/nginx/fastcgi_params;

    post_action /test_post.php;
}

И в этом случае у меня все равно в PHP $_SERVER['BBBBBBB'] равен 0.



_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.