[ANN] nginx_uploadprogress_module v0.3

Brice Figureau brice+nginx at daysofwonder.com
Tue May 6 13:38:25 MSD 2008


I'm proud to announce the availability of the version 0.3 of the

As usual the module is available as an attachment of the wiki page:

I will try to setup a public git repository of the module soon.

Changes since v0.2:

 * fixed crash if the upload was denied by nginx because of any error
   condition (thanks to Michal Drapiewski for his detailed report)

 * report original upload error condition to client in the upload
   probe, instead of only 413 (Entity too Large).

 * case-insensitive checking of the X-Progress-ID header to overcome
   Explorer XMLHttpRequest header lowercasing issue.

More Information:

This module implements a progress upload ala Lighttpd mod_uploadprogress
for nginx. It monitors RFC1867 uploads sent to upstream servers and can
serve special JSON response containing information about the upload
progress on request.

This module doesn't implement a RFC1867 parser and client code. As such
I consider this module as a temporary hack until Igor Sysoev implements
a full client body filter chain into Nginx.

This module is delivered as is (no guarantee of any kind) under the BSD
license with the following caveats and warnings:
 * this software has never been tested under load. It only passed a few
lab tests.
 * it is not intended to be deployed on *production systems*.
 * when compiled with --with-debug, this module will produce high number
of log messages.

More information on the wiki page:

The code is available as an attachment of the aforementionned page.

Installation instructions:

nginx_uploadprogress_module has been compiled/tested with Nginx 0.6.1,
0.6.12, 0.6.13 and 0.6.30. The legacy 0.5.x versions are not supported,
please upgrade your nginx installation to the current stable (0.6.30 and

1) download the Nginx sources from http://nginx.net/ and unpack it.

2) build Nginx: change to the directory which contains the Nginx
sources, and run the configuration script making sure to add the path
to the nginx_uploadprogress_module sources using the --add-module
 $ ./configure --add-module=/path/to/nginx_uploadprogress_module/

Now you can build and install the software:
 $ make

and as root:
 $ make install 
For usage, configuration and examples, please see the wiki page or the
README file.

Anyway enjoy :-)
Brice Figureau <brice+nginx at daysofwonder.com>

More information about the nginx mailing list