Nginx file straming

Hello
I have problem with nginx
When my server sream big files + 1024MB via firefox or other browser the
connect is reseting (file szise is 4gb but download only 1000 - 1157)
I use php-fpm

dominian conf

upstream php_fpm {
server unix:/var/run/php-fpm/php-fpm.sock;
}

server
{
listen 80;
server_name v10.server.me;

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

proxy_buffers 8 16k;
proxy_buffer_size 32k;

client_header_timeout 120;
client_body_timeout 120;
send_timeout 120;

location /
{
  root /var/www;
  index  index.php index.html index.htm;
error_page   404 = http://direct.rapidox.pl/404.php;
#error_page   502 503 504 = http://direct.rapidox.pl/502.php;
rewrite ^/file/([^/]+)/(.*)$ /download.php?kod=$1&filename=$2 last;
location ~ .php$
    {
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_pass   php_fpm;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME

$document_root$fastcgi_script_name;
include fastcgi_params;
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_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}

location = /php_status {
  include /etc/nginx/fastcgi_params;
  fastcgi_param SCRIPT_FILENAME /php_status;
  fastcgi_pass  php_fpm;
  access_log off;
}

location /nginx_status {
  stub_status on;
  access_log   off;
}

}
}
and nginx.conf
user www-data;
worker_processes 2;
worker_rlimit_nofile 16384;
worker_rlimit_sigpending 32768;
worker_priority -5;
#worker_cpu_affinity 01000000 00100000 00010000 10000000 00001000
00000100 00000010 00000001;

pid /var/run/nginx.pid;

events {
worker_connections 2048;
multi_accept on;
use epoll;
}

http {

Basic Settings

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_tokens off;

server_names_hash_bucket_size 64;

server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

Logging Settings

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

Gzip Settings

gzip on;
gzip_disable “msie6”;

gzip_vary on;

gzip_proxied any;

gzip_comp_level 6;

gzip_buffers 16 8k;

gzip_http_version 1.1;

gzip_types text/plain text/css application/json

application/x-javascript text/xml application/xml application/xml+rss
text/javascript;

include /etc/nginx/sites-enabled/*;
}

and fpm worker conf
[www]
listen = /var/run/php-fpm/php-fpm.sock
;listen.backlog = -1
;listen.allowed_clients = 127.0.0.1
listen.owner = www-data
listen.group = www-data
;listen.mode = 0666
user = www-data
group = www-data
pm = dynamic
pm.max_requests = 0
pm.max_children = 75
pm.start_servers = 10
pm.min_spare_servers = 10
pm.max_spare_servers = 50
pm.status_path = /php_status
php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f
[email protected]
php_flag[display_errors] = On
php_admin_value[memory_limit] = 1024M

and fpm conf

;;;;;;;;;;;;;;;;;;;;;
; FPM Configuration ;
;;;;;;;;;;;;;;;;;;;;;

; All relative paths in this configuration file are relative to PHP’s
install
; prefix (/usr). This prefix can be dynamicaly changed by using the
; ‘-p’ argument from the command line.

; Include one or more files. If glob(3) exists, it is used to include a
bunch of
; files from a glob(3) pattern. This directive can be used everywhere in
the
; file.
; Relative path can also be used. They will be prefixed by:
; - the global prefix if it’s been set (-p arguement)
; - /usr otherwise
;include=/etc/php5/fpm/*.conf

;;;;;;;;;;;;;;;;;;
; Global Options ;
;;;;;;;;;;;;;;;;;;

[global]
; Pid file
; Note: the default prefix is /var
; Default Value: none
pid = /var/run/php5-fpm.pid

; Error log file
; Note: the default prefix is /var
; Default Value: log/php-fpm.log
error_log = /var/log/php5-fpm.log

; Log level
; Possible Values: alert, error, warning, notice, debug
; Default Value: notice
;log_level = notice

; If this number of child processes exit with SIGSEGV or SIGBUS within
the time
; interval set by emergency_restart_interval then FPM will restart. A
value
; of ‘0’ means ‘Off’.
; Default Value: 0
;emergency_restart_threshold = 0

; Interval of time used by emergency_restart_interval to determine when

; a graceful restart will be initiated. This can be useful to work
around
; accidental corruptions in an accelerator’s shared memory.
; Available Units: s(econds), m(inutes), h(ours), or d(ays)
; Default Unit: seconds
; Default Value: 0
;emergency_restart_interval = 0

; Time limit for child processes to wait for a reaction on signals from
master.
; Available units: s(econds), m(inutes), h(ours), or d(ays)
; Default Unit: seconds
; Default Value: 0
;process_control_timeout = 0

; Send FPM to background. Set to ‘no’ to keep FPM in foreground for
debugging.
; Default Value: yes
;daemonize = yes

; Set open file descriptor rlimit for the master process.
; Default Value: system defined value
;rlimit_files = 1024

; Set max core size rlimit for the master process.
; Possible Values: ‘unlimited’ or an integer greater or equal to 0
; Default Value: system defined value
;rlimit_core = 0

;;;;;;;;;;;;;;;;;;;;
; Pool Definitions ;
;;;;;;;;;;;;;;;;;;;;

; Multiple pools of child processes may be started with different
listening
; ports and different management options. The name of the pool will be
; used in logs and stats. There is no limitation on the number of pools
which
; FPM can handle. Your system will tell you anyway :slight_smile:

; To configure the pools it is recommended to have one .conf file per
; pool in the following directory:
include=/etc/php5/fpm/pool.d/*.conf

files is streaming via curl
i dont have any idea
and my logs are clean ( i don’t see any probem)
i trayed debug mode but this isn’t helpfull

Posted at Nginx Forum:
http://forum.nginx.org/read.php?2,220679,220679#msg-220679

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs