]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/commitdiff
(no commit message)
authorssm <ssm@web>
Thu, 10 Apr 2014 22:21:44 +0000 (18:21 -0400)
committeradmin <admin@branchable.com>
Thu, 10 Apr 2014 22:21:44 +0000 (18:21 -0400)
doc/plugins/contrib/purge.mdwn [new file with mode: 0644]

diff --git a/doc/plugins/contrib/purge.mdwn b/doc/plugins/contrib/purge.mdwn
new file mode 100644 (file)
index 0000000..cac3c50
--- /dev/null
@@ -0,0 +1,38 @@
+[[!template id=plugin name=purge core=0 author="[[ssm]]"]]
+
+IkiWiki plugin to send PURGE requests to remote http cache server (like Varnish Cache) when your content changes.
+
+PURGE requests are sent for the changed page, as well as all pages indirectly changed when ikiwiki rebuilds the web pages.
+
+# Download
+
+Download from [Github](https://github.com/ssm/ikiwiki-plugin-purge)
+
+# Configure ikiwiki
+
+    # purge_url (mandatory), the address of your cache server.
+    purge_url: http://example.com/
+
+    # purge_timeout (optional, default 5) timeout in seconds for a purge request.
+
+    # purge_method (optional, default "PURGE") HTTP method to use.
+    
+# Configure your cache server
+
+For Varnish, you'll need to add a handler for the non-standard "PURGE" method, and preferrably an ACL which restricts who can send these requests to empty your cache.
+
+    acl origin_server {
+        "localhost";
+        "192.0.2.0"/24;
+        "2001:db8::"/64;
+    }
+    sub vcl_recv {
+        if (req.method == "PURGE") {
+            if (!client.ip ~ origin_server) {
+                return(synth(405,"Not allowed."));
+            }
+            return (purge);
+        }
+    }
+