jean-beru/fos-http-cache-cloudfront
最新稳定版本:1.2.0
Composer 安装命令:
composer require jean-beru/fos-http-cache-cloudfront
包简介
Tools to manage CloudFront HTTP caching proxy with PHP
README 文档
README
This library provides an implementation of FOSHttpCache for CloudFront.
Usage
Initialize dependency
First, create an instance of AsyncAws\CloudFront\CloudFrontClient to allow the proxy to make requests.
See aws-sdk-php documentation
for more information.
use Aws\CloudFront\CloudFrontClient; $client = new CloudFrontClient(/* client configuration */);
Create the CloudFront proxy
To instantiate the proxy, pass the CloudFront client and the AWS CloudFront distribution ID.
use JeanBeru\HttpCacheCloudFront\Proxy\CloudFront; $proxy = new CloudFront( client: $client, options: [ 'distribution_id' => 'XYZ1234657', ], );
Invalidate URLs
To invalidate /homepage URL and all URLs matching the /assets/* pattern on the "XYZ1234657" distribution.
$proxy ->purge('/homepage') ->purge('/assets/*') // To send the purge request, flush() method must be called ->flush() ;
Avoid request duplication
CloudFront APIs asks for a "caller reference" to avoid duplicated requests. By default, this library use the UniqIdCallerReferenceGenerator to generate a unique identifier.
You can use other generators present in the CallerReference folder or implement your own by implementing the CallerReferenceGenerator interface.
For instance, if you want to avoid duplicate calls in the same minute:
use JeanBeru\HttpCacheCloudFront\Proxy\CloudFront; use JeanBeru\HttpCacheCloudFront\CallerReference\DateCallerReferenceGenerator; $proxy = new CloudFront( client: $client, options: [ 'distribution_id' => 'XYZ1234657', 'caller_reference_generator' => new DateCallerReferenceGenerator('YmdHi'), ], );
If a duplication is detected by AWS, a FOS\HttpCache\Exception\ProxyResponseException will be thrown.
Resources
统计信息
- 总下载量: 1.88k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 1
- 推荐数: 1
其他信息
- 授权协议: MIT
- 更新时间: 2023-04-04