Re: $body bytes sent всегда 0, но не в логах.

Igor Sysoev igor на sysoev.ru
Пт Май 27 11:34:13 MSD 2011


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 ему вернёт.


-- 
Igor Sysoev



Подробная информация о списке рассылки nginx-ru