]> granicus.if.org Git - php/commitdiff
Add a nocache feature: If documents are stored under /nocache/,
authorSascha Schumann <sas@php.net>
Mon, 10 Dec 2001 13:31:41 +0000 (13:31 +0000)
committerSascha Schumann <sas@php.net>
Mon, 10 Dec 2001 13:31:41 +0000 (13:31 +0000)
appropiate HTTP headers will be sent which prevent client/proxy caching.

sapi/thttpd/thttpd_patch

index 1a058c7aaad75b5e0ab949129488d6be32d752cd..4131e026736c1afb120fc670cfc1239b7348fb95 100644 (file)
@@ -203,4 +203,26 @@ diff -ur thttpd-2.21b-orig/thttpd.c thttpd-2.21b/thttpd.c
            hc->responselen = newlen;
            sz = 0;
            }
-Only in thttpd-2.21b: thttpd.c~
+diff -ur thttpd-2.21b-plain/libhttpd.c thttpd-2.21b/libhttpd.c
+--- thttpd-2.21b-plain/libhttpd.c      Tue Apr 24 00:42:40 2001
++++ thttpd-2.21b/libhttpd.c    Mon Dec 10 14:32:26 2001
+@@ -3611,14 +3611,18 @@
+       }
+     else
+       {
++              char *extraheads = "";
+       hc->file_address = mmc_map( hc->expnfilename, &(hc->sb), nowP );
+       if ( hc->file_address == (char*) 0 )
+           {
+           httpd_send_err( hc, 500, err500title, "", err500form, hc->encodedurl );
+           return -1;
+           }
++      if (strncmp(hc->decodedurl, "/nocache/", sizeof("/nocache/")-1) == 0) 
++              extraheads = "Expires: Thu, 19 Nov 1981 08:52:00 GMT\r\nCache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0\r\nPragma: no-cache\r\n";
++
+       send_mime(
+-          hc, 200, ok200title, hc->encodings, "", hc->type, hc->sb.st_size,
++          hc, 200, ok200title, hc->encodings, extraheads, hc->type, hc->sb.st_size,
+           hc->sb.st_mtime );
+       }