Title: C3 Cloudfront Cache Controller
Author: hide
Published: <strong>2015 年 11 月 27 日</strong>
Last modified: 2026 年 3 月 23 日

---

搜索插件

![](https://ps.w.org/c3-cloudfront-clear-cache/assets/banner-772x250.jpg?rev=3337009)

![](https://ps.w.org/c3-cloudfront-clear-cache/assets/icon-256x256.jpg?rev=3337009)

# C3 Cloudfront Cache Controller

 作者：[hide](https://profiles.wordpress.org/hideokamoto/)

[下载](https://downloads.wordpress.org/plugin/c3-cloudfront-clear-cache.7.3.2.zip)

 * [详情](https://cn.wordpress.org/plugins/c3-cloudfront-clear-cache/#description)
 * [评价](https://cn.wordpress.org/plugins/c3-cloudfront-clear-cache/#reviews)
 *  [安装](https://cn.wordpress.org/plugins/c3-cloudfront-clear-cache/#installation)
 * [开发进展](https://cn.wordpress.org/plugins/c3-cloudfront-clear-cache/#developers)

 [支持](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/)

## 描述

这是个简单的插件，在您发布文章时清除所有的CloudFront缓存。
 您可以容易的在WordPress
前面使用CloudFront。

### Fixtures

 * wp_is_mobile()
    Check device viewer type by CloudFront header. Now supports `
   HTTP_CLOUDFRONT_IS_MOBILE_VIEWER` and `HTTP_CLOUDFRONT_IS_TABLET_VIEWER`.
 * preview url
    In preview page, plugin add `post_date` query to avoid CloudFront
   cache. And set `wordpress_loginuser_last_visit` cookie for avoid CloudFront cache
   too.

The `wordpress_loginuser_last_visit` cookie will be removed if user sign out.

#### Invalidation(Clear Cache) Page URL

This plugin send following page url to CloudFront Invalidation API.

 * TOP page URL
 * Published Post Page URL
 * Category Archive Page URL

### AWS IAM Policy Example

    ```
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Action": [
                    "cloudfront:GetDistribution",
                    "cloudfront:ListInvalidations",
                    "cloudfront:GetStreamingDistribution",
                    "cloudfront:GetDistributionConfig",
                    "cloudfront:GetInvalidation",
                    "cloudfront:CreateInvalidation"
                ],
                "Effect": "Allow",
                "Resource": "*"
            }
        ]
    }
    ```

**Note:** The `cloudfront:GetInvalidation` permission is required for viewing detailed
invalidation information. If this permission is not granted, the detail view feature
will be disabled gracefully without affecting other plugin functionality.

### Adding your configuration through env vars

The plugin can be configured by defining the following variables:

 * `AWS_ACCESS_KEY_ID`
 * `AWS_SECRET_ACCESS_KEY`
 * `C3_DISTRIBUTION_ID`

You can put these variables like the code into the wp-config.php

    ```
    php
    define( 'AWS_ACCESS_KEY_ID', '' );
    define( 'AWS_SECRET_ACCESS_KEY', '' );
    define( 'C3_DISTRIBUTION_ID', '' );
    ```

### Cookie

This plugin set a Cookie named `wordpress_loginuser_last_visit` to the user.
 It
prevents CDN caching when the user is previewing his posts or contents. Once logging
out from Dashboard, plugin removes this cookie from user.

### 7.1.0

 * [Feature] Add invalidation detail view with modal popup showing invalidation 
   paths, caller reference, and status
 * [Fix] Fix invalid path returned for post type without archive page

### 7.0.1

 * [Update] Improved AWS API call processing for better security and PHP 8.x compatibility

### 7.0.0

 * [Breaking Change] Remove AWS SDK dependency and implement custom HTTP CloudFront
   API client
 * [Update] Add comprehensive invalidation logging with c3_log_invalidation_list
   filter
 * [Update] Add configurable CloudFront region and HTTP timeout settings

### 6.1.6

 * [Fix] Fixed PHP 8 syntax errors by adding nullable type hints
 * [Fix] Fixed deprecation warnings about creation of dynamic properties in Invalidation_Service.
   php
 * [Fix] Fixed deprecation warnings about creation of dynamic properties in Cron_Service.
   php
 * [Fix] Fixed PHP 7.4 syntax errors in test files

### 6.1.5

 * [Fix] Changed to install the AWS SDK using composer instead of aws.phar.

### 6.1.4

 * [Update] Support post_type_archive_link

### 6.1.3

 * [Fix] Lost filter c3_invalidation_items From v6.0.0

### 6.1.2

 * [Fix] php version compare issue

### 6.1.1

 * [Fix] Plugin deactivation issue

### 6.1.0

 * [Update] Flush cache by post_ids

### 6.0.0

 * [Breaking Change] Re-write entire code
 * [Update] Add `c3_log_cron_invalidation_task` filter to show cron job Logs
 * [Update] Add `c3_aws_sdk_path` filter to change or remove bundled AWS SDK path

### 5.5.1

 * [Update] Replace the top level menu with a Settings submenu

#### 5.5.0

 * [Update] Can use defined variables for AWS Credentials

#### 5.4.2

 * [Bug fix] Set cookie path in preview page

#### 5.4.1

 * [Bug fix] Undefined Paths index in invalidation query cron event

#### 5.4.0

 * [Update] Update preview fix plugin

#### 5.3.4

 * [Bug fix] Small bug fix

#### 5.3.3

 * [Change SDK] replace sdk

#### 5.3.2

 * [Bug fix] Use EC2 role if using as AMIMOTO Managed hosting

#### 5.3.1

 * [Add filter] Can select AWS SDK version by filter

#### 5.3.0

 * [Update SDK] Use AWS SDK v3 when you using php 5.6 or later

#### 5.2.1

 * [For AMIMOTO Managed] bug fix to run by WP-CLI

#### 5.2.0

 * [Add filter] We can disable to register wp-cron that retry request invalidation.
 * [Readme] Update readme to see IAM Policy example.

#### 5.1.0

 * [Update preview fixture] Set cookie to avoid CloudFront cache if user sign in
 * [Update preview fixture] Unset cookie for avoide CloudFront cache if user sign
   out

#### 5.0.0

 * Support CloudFront viewer params on `wp_is_mobile()`.(4.9.0 or later)

#### 4.4.0

 * Fix small bug
 * Add some feature for AMIMOTO Managed hosting user

#### 4.3.1

 * Fix cron interval
 * add filters `'c3_invalidation_interval`, `c3_invalidation_cron_interval`, `c3_invalidation_item_limits`.
 * update default invalidation interval & items.

#### 4.3.0

 * Schedule cron event if you published many post at the same time

#### 4.2.1

 * Fix ‘c3_credential’ filter position

#### 4.2.0

 * Support AMIMOT Dashboard

#### 4.1.0

 * Show Invalidation Logs

#### 4.0.3

 * Auto Deploy by Travis

#### 4.0.2

 * Add WP-CLI param check ( wp c3 flush)
 * change transient_key

#### 4.0.1

 * Bug fix ( conflict Nephila Clavata )

#### 4.0.0

 * Support AWS SDK Version3
 * Remove action hook -> ‘c3_add_setting_before’
    use ‘c3_after_title’ filter hook
   instead.
 * Remove action hook -> ‘c3_add_setting_after’
    use ‘c3_after_auth_form’ filter
   hook instead.

#### 3.0.0

 * Include CF Preview Fix plugin
 * Rename

#### 2.4.3

 * Fix Catch Exception BUG

#### 2.4.2

 * Fix CLI BUG

#### 2.4.1

 * Fix CLI BUG

#### 2.4.0

 * Add WP-CLI Command ( Update Settings )

#### 2.3.0

 * Add WP-CLI Command

#### 2.2.2

 * Force Invalidation

#### 2.2.1

 * Fix Typo

#### 2.2.0

 * Add Filter for using EC2 Instance Role.
 * Translationable in t.w.org

#### 2.1.1

 * Fix too many invalidation url error.

#### 2.1.0

 * Add hook to customize invalidation URL
 * support new invalidation url, terms.
 * Manualy invalidation button added

#### 2.0.2

 * 更改AWS SDK
 * wokamoto的代码重构工程
 * 无效的URL

#### 2.0.1

 * 更改AWS SDK
 * wokamoto的代码重构工程
 * 无效的URL

#### 1.0

 * 初始发布。

### 6.1.0

 * [Fix] Plugin deactivation issue

## 安装

 1. 通过WordPress的“插件”菜单激活插件
 2. Create IAM user to attach valid IAM Policy for AWS CloudFront
 3. Configure the plugin settings from wp-admin

## 常见问题

### 此插件会什么时候发送发效请求？

发布文章时，此插件向CloudFront发送无效请求。

### Custom Implementation

This plugin now uses a custom AWS CloudFront implementation instead of the official
AWS SDK to reduce dependencies and improve performance.

## 评价

![](https://secure.gravatar.com/avatar/641adb12bdac18eb356b0ec6a89a62c687b494c9840fa80ca19d3a4a39a47e3e?
s=60&d=retro&r=g)

### 󠀁[Wow, unexpectedly surprised at how well it works.](https://wordpress.org/support/topic/wow-unexpectedly-surprised-at-how-well-it-works/)󠁿

 [matyssik](https://profiles.wordpress.org/matyssik/) 2022 年 1 月 15 日

Do not be fooled by small number of reviews. This plugin works super well and even
works with the instance profile (no need to supply access/secret keys). It is simple
and does the job as advertised, excellent work! Thanks from saving me a ton of time
to write my own plugin like that.

![](https://secure.gravatar.com/avatar/5f8e015c797808f9a515f3ecbfd2e67d0a6b7450fd8c59138bea5c91ef89663a?
s=60&d=retro&r=g)

### 󠀁[Works well](https://wordpress.org/support/topic/works-well-1417/)󠁿

 [Ant](https://profiles.wordpress.org/ar0berts/) 2018 年 7 月 30 日

Works well and very easy to get going. Occasionally disabled itself when used with
other plugins e.g. backupbuddy. Would be nice to store AWS credentials in wp-config.
php too. Otherwise excellent. Thank you.

![](https://secure.gravatar.com/avatar/29153f81881e3546d428e31d11c18385eba4fb20b5e48a1cdc6f549d1a880ad8?
s=60&d=retro&r=g)

### 󠀁[Works like charm!!!](https://wordpress.org/support/topic/works-like-charm-72/)󠁿

 [freaker2k17](https://profiles.wordpress.org/freaker2k17/) 2017 年 9 月 8 日

Tried a couple of others until I found this amazing simple plugin ! But After I 
enter the credentials there should be some screen… I see a blank page :/ But It 
works!!!

 [ 阅读所有3条评价 ](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/)

## 贡献者及开发者

「C3 Cloudfront Cache Controller」是开源软件。 以下人员对此插件做出了贡献。

贡献者

 *   [ hide ](https://profiles.wordpress.org/hideokamoto/)
 *   [ AMIMOTO ](https://profiles.wordpress.org/amimotoami/)
 *   [ DigitalCube Inc. ](https://profiles.wordpress.org/megumithemes/)
 *   [ wokamoto ](https://profiles.wordpress.org/wokamoto/)
 *   [ Takayuki Miyauchi ](https://profiles.wordpress.org/miyauchi/)
 *   [ Hinaloe ](https://profiles.wordpress.org/hnle/)
 *   [ Bartosz Gadomski ](https://profiles.wordpress.org/bartoszgadomski/)
 *   [ jepser ](https://profiles.wordpress.org/jepser/)
 *   [ John Blackbourn ](https://profiles.wordpress.org/johnbillion/)
 *   [ Sander van Dragt ](https://profiles.wordpress.org/pacifika/)

「C3 Cloudfront Cache Controller」插件已被翻译至 2 种本地化语言。 感谢[所有译者](https://translate.wordpress.org/projects/wp-plugins/c3-cloudfront-clear-cache/contributors)
为本插件所做的贡献。

[帮助将「C3 Cloudfront Cache Controller」翻译成简体中文。](https://translate.wordpress.org/projects/wp-plugins/c3-cloudfront-clear-cache)

### 对开发感兴趣吗?

您可以[浏览代码](https://plugins.trac.wordpress.org/browser/c3-cloudfront-clear-cache/)，
查看[SVN仓库](https://plugins.svn.wordpress.org/c3-cloudfront-clear-cache/)，或通过
[RSS](https://plugins.trac.wordpress.org/log/c3-cloudfront-clear-cache/?limit=100&mode=stop_on_copy&format=rss)
订阅[开发日志](https://plugins.trac.wordpress.org/log/c3-cloudfront-clear-cache/)。

## 更新日志

#### 7.3.2

 * [Fix]
    - Exclude `.cursor` and `.github` from WordPress.org distribution package to
      prevent packaging conflicts
 * [Maintenance]
    - Improve release workflow settings for WordPress.org asset/readme sync stability
    - Update release documentation for branch strategy and version consistency checks

#### 7.3.1

 * [Fix]
    - Improved cache invalidation handling for posts transitioning between published
      and draft states, ensuring proper cache clearing during state changes
    - Enhanced URL detection for more reliable CloudFront invalidation across different
      URL formats
 * [Improvements]
    - Extended support for WordPress subdirectory installations to ensure proper
      cache path handling

#### 7.2.0

 * [Feature] Add 3 new path adjustment hooks for more granular invalidation control:
    - `c3_invalidation_post_batch_home_path` – Customize home path for single post
      invalidation
    - `c3_invalidation_posts_batch_home_path` – Customize home path for multiple
      posts invalidation
    - `c3_invalidation_manual_batch_all_path` – Customize path for manual “clear
      all” operations
 * [Enhancement] Update Hooks.php to support variable arguments in apply_filters
   method
 * [Compatibility] Maintain full backward compatibility with existing c3_invalidation_items
   filter

## 额外信息

 *  版本 **7.3.2**
 *  最后更新：**2 月前**
 *  活跃安装数量 **3,000+**
 *  WordPress 版本 ** 4.9.0 或更高版本 **
 *  已测试的最高版本为 **6.9.4**
 *  PHP 版本 ** 7.4 或更高版本 **
 *  语言
 * [English (US)](https://wordpress.org/plugins/c3-cloudfront-clear-cache/) 、 [Japanese](https://ja.wordpress.org/plugins/c3-cloudfront-clear-cache/)
   和 [Korean](https://ko.wordpress.org/plugins/c3-cloudfront-clear-cache/).
 *  [翻译成简体中文](https://translate.wordpress.org/projects/wp-plugins/c3-cloudfront-clear-cache)
 * 标签
 * [aws](https://cn.wordpress.org/plugins/tags/aws/)[cdn](https://cn.wordpress.org/plugins/tags/cdn/)
   [cloudfront](https://cn.wordpress.org/plugins/tags/cloudfront/)
 *  [高级视图](https://cn.wordpress.org/plugins/c3-cloudfront-clear-cache/advanced/)

## 评级

 4.3 星（最高 5 星）。

 *  [  1 条 5 星评价     ](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/?filter=5)
 *  [  2 条 4 星评价     ](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/?filter=4)
 *  [  0 条 3 星评价     ](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/?filter=3)
 *  [  0 条 2 星评价     ](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/?filter=2)
 *  [  0 条 1 星评价     ](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/#new-post)

[查看全部评论](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/reviews/)

## 贡献者

 *   [ hide ](https://profiles.wordpress.org/hideokamoto/)
 *   [ AMIMOTO ](https://profiles.wordpress.org/amimotoami/)
 *   [ DigitalCube Inc. ](https://profiles.wordpress.org/megumithemes/)
 *   [ wokamoto ](https://profiles.wordpress.org/wokamoto/)
 *   [ Takayuki Miyauchi ](https://profiles.wordpress.org/miyauchi/)
 *   [ Hinaloe ](https://profiles.wordpress.org/hnle/)
 *   [ Bartosz Gadomski ](https://profiles.wordpress.org/bartoszgadomski/)
 *   [ jepser ](https://profiles.wordpress.org/jepser/)
 *   [ John Blackbourn ](https://profiles.wordpress.org/johnbillion/)
 *   [ Sander van Dragt ](https://profiles.wordpress.org/pacifika/)

## 支持

有话要说吗？是否需要帮助？

 [查看支持论坛](https://wordpress.org/support/plugin/c3-cloudfront-clear-cache/)

## 捐助

您愿意支持这个插件的发展吗?

 [ 捐助此插件 ](http://wp-kyoto.net/)