The following reply was made to PR mod_proxy/5668; it has been noted by GNATS.
From: Kim Bisgaard <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: Re: mod_proxy/5668: Patch for streaming servers and long running cgi-scripts Date: Tue, 1 Feb 2000 13:10:57 +0100 Retransmit because Netscape send last message as uuencode/base64. Clarification: After this patch has been applied, one only has to make sure that the long running scripts outputs "Pragma: nocache" in the header (what they should have done all the time, anyway), and then they will be passed through the proxy un-buffered and un-cached. No performance losses on other urls. The total/correct patch for this problem is: *** /tmp/proxy_http.c.org Mon Jan 31 16:37:32 2000 --- /tmp/proxy_http.c Mon Jan 31 16:37:32 2000 *************** *** 187,193 **** int destport = 0; char *destportstr = NULL; const char *urlptr = NULL; ! const char *datestr; struct tbl_do_args tdo; void *sconf = r->server->module_config; --- 187,193 ---- int destport = 0; char *destportstr = NULL; const char *urlptr = NULL; ! const char *datestr, *pragma; struct tbl_do_args tdo; void *sconf = r->server->module_config; *************** *** 468,473 **** --- 468,483 ---- ap_table_set(resp_hdrs, "Location", proxy_location_reverse_map(r, datestr)); if ((datestr = ap_table_get(resp_hdrs, "URI")) != NULL) ap_table_set(resp_hdrs, "URI", proxy_location_reverse_map(r, datestr)); + + /* If "Pragma: no-cache" or "Cache-Control: no-cache" + * set nocache and make reply un-buffered to enshure timely delivery */ + if (((pragma = ap_table_get(resp_hdrs, "Pragma")) != NULL && + ap_proxy_liststr(pragma, "no-cache")) || + ((pragma = ap_table_get(resp_hdrs, "Cache-Control")) != NULL && + ap_proxy_liststr(pragma, "no-cache"))) { + nocache = 1; + r->connection->client->flags &= ~B_WR; + } /* check if NoCache directive on this host */ for (i = 0; i < conf->nocaches->nelts; i++) { -- Kim Bisgaard Oersted Science Data Center Solar-Terrestrial Physics Division Phone: +45 3915 7495 (direct) Danish Meteorological Institute Fax: +45 3915 7460 (division) http://www.dmi.dk/solar-terrestrial/ -- Division homepage http://www.dmi.dk/projects/oersted/ -- Oersted Satellite http://www.dmi.dk/projects/wdcc1/ -- WDC C1 for geo-magnetism These are our official Web addresses - ignore any change in the server name which may occur while browsing this site. Unfortunately, these pages are not reachable via links from the main institute pages - http://www.dmi.dk