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"]