14four / laravel-cloudfront
监控CloudFront并根据日期时间切换源。
v1.0.2
2020-01-06 19:23 UTC
Requires
- aws/aws-sdk-php: ^3.64
Requires (Dev)
- laravel/framework: ^5.8
- orchestra/testbench: ^3.8
- phpunit/phpunit: ^7.5
This package is auto-updated.
Last update: 2024-09-07 05:44:37 UTC
README
CloudFront管理器将切换正在使用的CloudFront源。
[目录]
目的
本包的目的是在特定时间过后自动切换源。
这允许我们在S3桶中托管静态文件,并在特定时间切换使用的桶。
安装
添加到Composer
composer require 14four/laravel-cloudfront
发布配置文件
php artisan vendor:publish --provider="CloudFrontManger\CloudFrontServiceProvider" --tag="config"
更新配置
ID
设置你将要针对的CloudFront ID...建议使用 env()
以便在阶段和生产环境中覆盖此设置。
示例
'id' => env('CLOUDFRONT_ID', 'productionid'),
凭据
这些将是你用来访问CloudFront的凭据。确保你提供的凭据可以读取和写入CloudFront。
将这些设置在.env文件中,以防止安全风险
示例
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
源
在配置中设置源。这些需要与你要针对的CloudFront分发中的 Origin ID
匹配。
示例
'origins' => [
'blank' => env('CLOUDFRONT_BLANK', 'origin-id'),
'comingSoon' => env('CLOUDFRONT_COMINGSOON', 's3-coming-soon-bucket'),
'live' => env('CLOUDFRONT_LIVE', 's3-live-bucket'),
'over' => env('CLOUDFRONT_OVER', 's3-over-bucket'),
],
行为
将你的行为映射到日期和应处于活跃状态的源。你可以切换多个行为(默认已提供)。
每个行为将基于已找到的最后一个日期进行检查。
示例
'behaviors' => [
'DefaultCacheBehavior' => [
[
'date' => env('CLOUDFRONT_PRE_DATE', '2019-08-01 00:00:00'),
'origin' => 'blank',
],
[
'date' => env('CLOUDFRONT_COMING_DATE', '2019-08-02 00:00:00'),
'origin' => 'comingSoon',
],
[
'date' => env('CLOUDFRONT_LIVE_DATE', '2019-09-02 12:00:00'),
'origin' => 'live',
],
[
'date' => env('CLOUDFRONT_OVER_DATE', '2019-11-20 23:59:59'),
'origin' => 'over',
],
],
],
添加到调度器
在 app/Console/Kernel.php
文件中添加 cloudfront:check
命令
protected function schedule(Schedule $schedule)
{
$schedule
->command('cloudfront:check')
->everyMinute();
}