Trouble getting UploadProgress module to work

Brice Figureau brice+nginx at daysofwonder.com
Sun May 23 01:10:02 MSD 2010


On 21/05/10 11:02, george_x wrote:
> My setup:
> - Debian Lenny
> - nginx-0.8.36 installed from source
> - nginx_upload_module-2.0.12 compiled in.
> - masterzen-nginx-upload-progress-module-v0.8.1-0 compiled in.

Apart from the fact I never tested the upload progress module with nginx
0.8.36, I don't see anything suspect here.

> - spawn-fcgi-1.6.2 installed from source, running on port 9000
> 
> Problem:
> Uploading works, but the progress keeps showing "Starting" while the file is uploaded. Only after it's done, the result is "Done". No upload progress is shown meanwhile.
> 
> Logs:
>>From the nginx debug log, while the upload goes on:
> [code]
> 2010/05/21 10:24:52 [debug] 17402#0: *465 reportuploads handler found id: 2094466ead99626ce9988aeef04cb816
> 2010/05/21 10:24:52 [debug] 17402#0: *465 upload-progress: find_node 2094466ead99626ce9988aeef04cb816
> 2010/05/21 10:24:52 [debug] 17402#0: *465 upload-progress: can't find node
> 2010/05/21 10:24:52 [debug] 17402#0: *465 reportuploads not found: 2094466ead99626ce9988aeef04cb816
> 2010/05/21 10:24:52 [debug] 17402#0: *465 http script copy: "new Object({ 'state' : 'starting' })
> [/code]

It looks like the upload hasn't been registered.
Can you find upload progress debug output that is logged when the upload
starts?

You can also sends me privately the full log for analysis.

> 
> And then, when the upload is done:
>  [code]
> 2010/05/21 08:51:36 [debug] 17321#0: *9 upload-progress: find_node 2094466ead99626ce9988aeef04cb816
> 2010/05/21 08:51:36 [debug] 17321#0: *9 upload-progress: found node
> 2010/05/21 08:51:36 [debug] 17321#0: *9 reportuploads found node: 2094466ead99626ce9988aeef04cb816(rest: 0, length: 0, done: 1, err_status: 0)
> 2010/05/21 08:51:36 [debug] 17321#0: *9 http script copy: "new Object({ 'state' : 'done' })
> [/code]
> 
> 
> But no upload progress!
> 
> My server config:
> [code]
> server {
> 	listen	80;
> 	server_name  myserver;
> 	root	/home/wwwadmin/www/;
> 	access_log	/home/wwwadmin/log/access.log;
> 	error_log	/home/wwwadmin/log/error.log debug_http debug_event;
> 	
> 	location / {
> 		# If the file exists as a static file serve it directly without
> 		# running all the other rewite tests on it
> 		if (-f $request_filename) {
> 			expires max;
> 			break;
> 		}
> 
> 		if ($request_filename !~ "\.(js|htc|ico|gif|jpg|png|css)$") {
> 				rewrite ^(.*) /index.php last;
> 		}
> 
> 		# upload_progress config
> 		proxy_pass http://127.0.0.1;
> 		proxy_redirect default;
> 		track_uploads proxied 60s;
> 	}
> 
> 	location ^~ /progress {
> 		report_uploads proxied;
> 	}	
> 
> 	location ~ \.php($|/) {
> 		set  $script     $uri;
> 		set  $path_info  "";
> 
> 		if ($uri ~ "^(.+\.php)(/.+)") {
> 			set  $script     $1;
> 			set  $path_info  $2;
> 		}
> 
> 		fastcgi_pass   127.0.0.1:9000;
> 
> 		include /etc/nginx/fastcgi_params;
> 
> 		fastcgi_param  SCRIPT_FILENAME  /home/wwwadmin/www$script;
> 		fastcgi_param  PATH_INFO        $path_info;
> 	}

Are you sure the upload doesn't use this location and not '/' one?
Because this one has no track_uploads.

> 	#deny access to .htaccess files
> 	location  ~ /\.ht {
> 		deny all;
> 	}
> }
> 
> [/code]
> 
> And the /etc/nginx/nginx.conf:
> [code]
> user wwwadmin;
> worker_processes  1;
> 
> error_log  /var/log/nginx/error.log;
> pid        /var/run/nginx.pid;
> 
> events {
>     worker_connections  1024;
> }
>  
> http {
>     upload_progress proxied 1M;
>     client_max_body_size 1024M;
>     client_body_buffer_size 1024M;
> 
>     include       /etc/nginx/mime.types;
>     default_type  application/octet-stream;
> 
>     access_log	/var/log/nginx/access.log;
> 
>     sendfile        on;
>     #tcp_nopush     on;
> 
>     #keepalive_timeout  0;
>     keepalive_timeout  3;
>     tcp_nodelay        on;
> 
>     gzip  on;
>     gzip_comp_level 2;
>     gzip_proxied any;
> 
>     include /etc/nginx/conf.d/*.conf;
>     include /etc/nginx/sites-enabled/*;
> }
> 
> [/code]
> 
> I suspect that I am missing something big and obvious in the configuration, since I cannot find any clues online about this. 
> 
> Hopefully someone recognizes this (probably noob) problem and can help out!
> 
> Thanks in advance
> 
> Posted at Nginx Forum: http://forum.nginx.org/read.php?2,88713,88713#msg-88713



More information about the nginx mailing list