From ddea7cb62ad16fe604bd079c6011060cebd2d3c6 Mon Sep 17 00:00:00 2001 From: ssm Date: Thu, 10 Apr 2014 18:21:44 -0400 Subject: [PATCH] --- doc/plugins/contrib/purge.mdwn | 38 ++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 doc/plugins/contrib/purge.mdwn diff --git a/doc/plugins/contrib/purge.mdwn b/doc/plugins/contrib/purge.mdwn new file mode 100644 index 000000000..cac3c508a --- /dev/null +++ b/doc/plugins/contrib/purge.mdwn @@ -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); + } + } + -- 2.44.0