razvanstanga / varnish-caching-wordpress-plugin

Varnish Cache Wordpress implementation
18 stars 5 forks source link
optimization performance varnish-cache wordpress-plugin

=== Varnish/Nginx Proxy Caching === Donate link: https://www.paypal.me/razvanstanga Contributors: razvanstanga Tags: varnish, nginx, purge, cache, caching, optimization, performance, traffic Requires at least: 4.0 Tested up to: 5.2 Requires PHP: 5.2.4 Stable tag: 1.8.3 License: GPL-3.0-or-later

Wordpress Varnish Cache 3.x/4.x/5.x and Nginx Proxy Cache integration

== Description == Complete Wordpress Varnish Cache 3.x/4.x/5.x and Nginx Proxy Cache integration.

This plugin handles all integration with Varnish Cache and Nginx Proxy Cache. It was designed for high traffic websites.

Main features

You can control the following from the Varnish Caching admin panel :

This plugin also auto purges Varnish Cache / Nginx Proxy Cache when your site is modified.

Varnish Caching sends a PURGE request to Varnish Cache / Nginx Proxy Cache when a page or post is modified. This occurs when editing, publishing, commenting or deleting an item, and when changing themes. Not all pages are purged every time, depending on your Varnish / Nginx Proxy Cache configuration. When a post, page, or custom post type is edited, or a new comment is added, only the following pages will purge:

Varnish Cache / Nginx Proxy Cache is a web application accelerator also known as a caching HTTP reverse proxy. You install it in front of any server that speaks HTTP and configure it to cache the contents. This plugin does not install Varnish/Nginx for you, nor does it configure Varnish/Nginx for WordPress. It's expected you already did that on your own using the provided config files.

Inspired from the following :

== Installation ==

Or use the provided Varnish Cache configuration files located in /wp-content/plugins/vcaching/varnish-conf folder.

You can also use the purge key method if you can't setup ACLs. You must fill in lib/purge.vcl the purge key.

== Frequently Asked Questions ==

= What version of Varnish Cache is supported? =

This was built and tested on Varnish 3.x/4.x/5.x.

= Is Nginx supported? =

Nginx is supported if you configure Nginx to use the PURGE method. Read the official Nginx documentaton on how to do this. Also there are a lot of tutorials to do this.

= Why doesn't every page flush when I make a new post? =

The only pages that should purge are the post's page, the front page, categories, and tags.

= How do I manually purge the whole cache? =

Click the 'Purge ALL Varnish Cache' button on the "Right Now" Dashboard.

= How do I manually purge cache? =

Use the console. For example you can purge the whole uploads folder with the URL /wp-content/uploads/.*

= Does this work with W3 Total Cache? =

Yes it does. This plugin uses its own custom headers to communicate with Varnish and does not interfere with the heders sent by W3 Total Cache or any other caching plugin.

= Varnish Statistics =

Statistics need a special setup. More info on the Statistics tab on your Wordpress environment.

= How do I configure my Varnish Cache VCL? =

Use the Varnish Cache configuration generator. Fill in the backends/ACLs then download your configuration files. Or use the provided Varnish Cache configuration files located in /wp-content/plugins/vcaching/varnish-conf folder.

= Can I use this with a proxy service like CloudFlare? =

Yes.

= What is logged in cookie? =

Logged in cookie is a special cookie this plugin sets upon user login. Varnish Cache uses this cookie to bypass caching for logged in users.

This is a small step towards securing your site for denial of service attacks. Denial of service attacks can happen if the attacker bypasses Varnish Cache and hits the backend directly. With the current configuration and the way Wordpress works, this can still happen with POST/AJAX requests.

= Available filters =

== Changelog ==

= 1.8.3 =

= 1.8.2 =

= 1.8.1 =

= 1.8.0 =

= 1.7.0 =

= 1.6.9 =

= 1.6.8 =

= 1.6.7 =

= 1.6.6 =

= 1.6.5 =

= 1.6.4 =

= 1.6.3 =

= 1.6.2 =

= 1.6.1 =

= 1.6 =

= 1.5.5 =

= 1.5.4 =

= 1.5.3 =

= 1.5.2 =

= 1.5.1 =

= 1.5 =

= 1.4.3 =

= 1.4.2 =

= 1.4.1 =

= 1.4 =

= 1.3.3 =

= 1.3.2 =

= 1.3.1 =

= 1.3 =

= 1.2.3 =

= 1.2.1 =

= 1.2 =

= 1.1 =

= 1.0 =

== Upgrade Notice ==

= 1.4 = Users using 1.3 Varnish Cache VCLs should upgrade to 1.4

== Screenshots ==

  1. Settings admin panel
  2. Console/manual purge admin panel
  3. Varnish Cache Statistics admin panel
  4. Varnish Cache configuration generator admin panel
  5. override default TTL in posts/pages
  6. integration example