I’m pleased to announce the release of the WSGI module for nginx,
version 0.0.6.
The WSGI module is an implementation of the Python Web Server Gateway
Interface v1.0 (PEP 333 – Python Web Server Gateway Interface v1.0 | peps.python.org) for the Nginx
server.
The module is available only via a Mercurial repository at:
http://hg.mperillo.ath.cx/nginx/mod_wsgi/
Here is a changelog:
-
Bug fix: configuration problem on Mac OS X.
-
Added support for nginx 0.5.34, and dropped support for older
versions.Note: older version are only supported via patches.
-
Added wsgi_optimize_send_headers directive.
WSGI spec requires that the headers must be sent when the first
not empty string is yielded, however sending headers early can
optimize content generation. -
Added experimental support for interpreter finalization.
This will ensure that sys.exitfunc is called.
-
Variables declared with wsgi_var directive can override HTTP_
variables.It can be useful, as an example, to override HTTP_COOKIE with:
wsgi_var HTTP_COOKIE $http_cookie;
since the $http_cookie variable combines multiple Cookie headers.
-
Renamed the wsgi_params directive to wsgi_var.
wsgi_param was a poor choice, since parameters are a concept used
by FastCGI.This revision breaks compatibility.
-
Added the wsgi_allow_ranges directive, for integrated support to
partial HTTP requests. -
Added the ngx_wsgitest.py script, that executes a WSGI application
in a testing environment. -
Added the ngx_wsgiref.py script, that runs a WSGI application
using the builtin wsgiref server, with a command line compatibile
with ngx_wsgi.py. -
Added the ngx_wsgi.py script, for rapid deployment of WSGI
applications using nginx and mod_wsgi. -
Added wsgi_middleware directive.
This directive enables middleware stacking in mod_wsgi.
-
Removed the callable_object and the wsgi_alias directives, and
added a new wsgi_pass directive.The new directive is more consistent with other nginx modules like
mod_fastcgi and mod_proxy.This revision breaks compatibility.
Manlio P.