This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Full Site Cache for CloudFront

Description

If you blog are using CloudFront on the main WordPress domain (e.g. www.example.com), and you want to cache HTML page for not logged in user. You could set a long “Default TTL” for these HTML pages if the cache could invalidate automatically.

Invalidation behaviors

  • Invalidate the whole cache when a new post published
  • Invalidate a post page when a post updated
  • Invalidate a post page if have any comment has changed on that page
  • Each invalidation has a minimum interval of 10 minutes

Requirements

  • PHP 5.4+
  • WordPress 4.4+
  • A CloudFront account and AWS Access Key and Secret Key to access CloudFront distribution.

Recommendations

  • Offload CSS, JS and medias file to another domain with a different distribution, because this plugin will invalidate the whole cache when updating the post.

Installation

First, you need to use CloudFront on your WordPress site.

Add the configuration code to your wp-config.php file above the line reading /* That’s all, stop editing! Happy blogging. */.

Example configuration:

$tlo_cf_id[1] = 'DISTRIBUTION_ID';
define( 'AWS_ACCESS_KEY_ID', '********************' );
define( 'AWS_SECRET_ACCESS_KEY', '****************************************' );
$wp_rich_edit = true; // CloudFront will remove user-agent header, so if you want to have Visual Editor, keep this line.

This plugin supports multisite, just replace 1 in the $tlo_cf_id[] to the blog id.

Contributors & Developers

“Full Site Cache for CloudFront” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

0.0.2

  • Fixed for comment approval.
  • Changed the invalidate behavior.

0.0.1

Published the first version