[dev] status line processing in filter module

Manlio Perillo manlio_perillo at libero.it
Fri Oct 19 16:55:59 MSD 2007


Hi.

When trying to enable support for Last-Modified validation in mod_wsgi I 
have found this code in the filter module:

/* status line */

     if (r->headers_out.status_line.len) {
         len += r->headers_out.status_line.len;
#if (NGX_SUPPRESS_WARN)
         status = NGX_INVALID_ARRAY_INDEX;
#endif

     } else {



The problem here is that the WSGI application returns a full status line 
(including the Reason-Phrase).

This means that the not_modified_filter has no effect, since nginx will 
not set the status_code to NGX_HTTP_NOT_MODIFIED and r->header_only = 1.

Of course in mod_wsgi I can just ignore the Reason-Phrase.


One last thing: does Nginx supports the Etag validation?





Thanks  Manlio Perillo





More information about the nginx mailing list