Add ability to PURGE the cache
authorMark Felder <feld@FreeBSd.org>
Tue, 20 Mar 2018 01:24:58 +0000 (01:24 +0000)
committerMark Felder <feld@FreeBSd.org>
Tue, 20 Mar 2018 01:24:58 +0000 (01:24 +0000)
Someday Pleroma will learn this skill :-)

installation/pleroma.vcl

index 8ba67069aa24ec7148ab9fef51e824fa8b9493af..869d9fe66aa48db77e241320d4f60d70aa1b2a4e 100644 (file)
@@ -6,6 +6,11 @@ backend default {
     .port = "4000";
 }
 
+# ACL for IPs that are allowed to PURGE data from the cache
+acl purge {
+    "127.0.0.1";
+}
+
 sub vcl_recv {
     # Redirect HTTP to HTTPS
     if (std.port(server.ip) != 443) {
@@ -18,6 +23,14 @@ sub vcl_recv {
         return (pipe);
     }
 
+    # Allow purging of the cache
+    if (req.method == "PURGE") {
+        if (!client.ip ~ purge) {
+          return(synth(405,"Not allowed."));
+        }
+        return(purge);
+    }
+
     # Pleroma MediaProxy - strip headers that will affect caching
     if (req.url ~ "^/proxy/") {
         unset req.http.Cookie;