On 12/11/06, Jakub Narebski <jnareb@xxxxxxxxx> wrote:
I was thinking not about ending execution, but about not sending script output but sending HTTP 304 Not Modified reply by Apache. I meant the following sequence of events: 1. Script sends headers, among those Last-Modified and/or ETag 2. Apache scans headers (e.g. to add its own), notices that Last-Modified is earlier or equal to If-Modified-Since: sent by browser or reverse proxy, or ETag matches If-None-Match:, and sends 304 instead of script output 3. Script finishes execution, it's output sent to /dev/null Again, I don't know if Apache (or any other web server) does that.
It doesn't. You want to take the decision to send a 304, cleanup and exit _inside_ the CGI. If it was up to apache, then the CGI script would end up creating the (potentially expensive to produce) content just to see it sent to /dev/null OR if apache was to terminate execution of the CGI more violently, the CGI wouldn't have a chance to cleanup and release resources. So it's a matter of setting the header to 304 and exiting. cheers, martin step 3 includes creating the content that is expensive to create - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html