metrique / laravel-cdnify
当指定的环境激活时,为任何路径添加CDN。
Requires
- laravel/framework: >=5.5
Requires (Dev)
- php: ^7.0
README
特性
- 在Laravel 5中,当指定的环境激活时,为任何路径添加CDN。
- 轻松将laravel-mix或laravel-elixir的版本化资源发布到您选择的文件系统。
安装
设置。
composer require metrique/laravel-cdnify- 可选地,将
Metrique\CDNify\CDNifyServiceProvider::class添加到config/app.php中的Autoloaded Service Providers列表中。 - 可选地,将
'CDNify'=>Metrique\CDNify\CDNifyFacade::class添加到config/app.php中的Class Aliases列表中。
CDNify支持Laravel包发现,因此步骤2和3是可选的。
配置。
可以通过编辑主应用程序目录中的config/cdnify.php来配置配置默认值。
您可以通过运行php artisan vendor:publish --tag="cdnify-config"将config/cdnify.php配置文件发布到应用程序配置目录。
用法
示例。
获取助手
资源存在于由Laravel Mix创建的mix-manifest.json中。 <script src="{{ $cdnify->get('js/site.js', true) }}" async></script>
获取CDN作为字符串。
$cdnify->cdn();
设置本地路径并获取完整的CDN路径。
$cdnify->path('/some/static/resource.jpg')->toString();
CDNify
$cdnify自动注册以在所有Laravel视图中使用。
$cdnify->defaults(); 如果更改了环境、mix或roundRobin设置,则将丢弃更改,以配置设置为准。
$cdnify->cdn(); 如果设置为true,则返回配置中的CDN路径,则每次调用都会遍历CDN列表。
$cdnify->path($path); 设置要CDN化的路径。
$cdnify->toString(); 返回CDN和路径作为字符串。
$cdnify->get($path, $params = []); 结合路径和toString方法的辅助实用工具。您可以将包含params(mix、environments、roundRobin)的数组传递给覆盖设置。
$cdnify->environments($environments); 设置要CDN化的路径的环境。
$cdnify->mix($bool); 设置是否使用mix,如果可用。
$cdnify->roundRobin($bool); 启用CDN列表上的轮询迭代。
CDNify命令
php artisan metrique:cdnify 此命令将运行npm run production或gulp --production,然后将mix-manifest.json中列出的任何资产部署到s3(或其他磁盘),通过Laravel文件系统。
选项
--build-source[=BUILD-SOURCE] 设置要上传的源文件路径。[默认: "/build"]
--build-dest[=BUILD-DEST] 设置上传文件的位置。[默认: "/build"]
--disk[=DISK] 设置磁盘/上传方法。[默认: "s3"]
--force 切换强制上传文件。
--skip-build 跳过运行npm run production或gulp --production构建过程。
--manifest[=MANIFEST] 设置清单位置。[默认: "/build/mix-manifest.json"]