kayqq/craft-cloudfront-purge

A Craft CMS 4.x plugin that enables automatic Cloudfront Cache invalidation on entry save

2.0.0 2023-06-13 17:42 UTC

This package is auto-updated.

Last update: 2024-05-13 20:06:19 UTC


README

Amazon S3 for Craft CMS icon

CloudFront Purge

A plugin for Craft CMS 3.x to enable CloudFront cache invalidation on entry save.

Requirements

This plugin requires Craft CMS 3.0.0-beta.23 or later.

Installation

To install the plugin, follow these instructions.

  1. Open your terminal and go to your Craft project:

    cd /path/to/project
    
  2. Then tell Composer to load the plugin:

    composer require kayqq/craft-cloudfront-purge
    
  3. In the Control Panel, go to Settings → Plugins and click the “Install” button for CloudFront Purge.

CloudFront Purge Overview

A lightweight plugin that creates an invalidation for CloudFront edge caches on entry save. The invalidation is specific to the entry being saved and preserves all other cached objects.

Configuring CloudFront Purge

  1. Add an IAM access key
  2. Add a IAM secret key
  3. Add a CloudFront distribution ID
  4. Add the region in which the distribution is, example: us-west-1.

Optional

  1. Add a path prefix, applicable if you’re using CloudFront as CDN for your assets and have configured subfolders or custom behaviors.
  2. Add a path suffix, applicable if you want to add trailing slash, wild card operator, or other custom behaviors.

Note: IAM role permissions must be configured to allow for invalidation creation for CloudFront.

Using CloudFront Purge

Note that Amazon CloudFront charges for invalidation requests. Since invalidation requests can quickly add up when purging individual URLs, you should be aware of the potential costs. Kayqq takes no responsibility whatsoever for expenses incurred.

No additional charge for the first 1,000 paths requested for invalidation each month. Thereafter, $0.005 per path requested for invalidation. A path listed in your invalidation request represents the URL (or multiple URLs if the path contains a wildcard character) of the object(s) you want to invalidate from CloudFront cache.

Source: aws.amazon.com/cloudfront/pricing

Entries on save will invalidate themselves if their uri exists (e.g., /blog/xyz).

Globals & Categories on save will invalidate the entire site (e.g., /* invalidation path).

There is also a cache option to purge CloudFront under Craft's Clear Cache Utility.

CloudFront Purge Roadmap

  • Release it

Brought to you by Kayqq