campaigningbureau / laravel-static-image-cache
将外部图像存储为静态文件
v10.0
2023-12-04 14:46 UTC
Requires
- php: ^7.3||^8.0||^8.1
- guzzlehttp/guzzle: ^7.8
- illuminate/console: ^8.0||^9.0||^10.0
- illuminate/filesystem: ^8.0||^9.0||^10.0
- illuminate/http: ^8.0||^9.0||^10.0
- illuminate/routing: ^8.0||^9.0||^10.0
- illuminate/support: ^8.0||^9.0||^10.0
README
将外部图像存储为静态文件
通过代理路由替换URI。
当调用此代理路由时,原始图像将缓存在配置的目录中并返回。
如果请求的文件已经被缓存,它将被直接由Web服务器返回。
安装
composer require campaigningbureau/laravel-static-image-cache
支持的版本
设置
将服务提供者添加到 app.php
提供者数组中
/* * Package Service Providers... */ CampaigningBureau\LaravelStaticImageCache\Provider\LaravelStaticImageCacheProvider::class,
使用方法
此包提供了两个辅助函数:static_image
和 statify_text
static_image
static_image
-helper 可以用于生成给定图像URL的静态文件URL。
<img src="{{ static_image('https://images.domain.com/my-image.jpg') }}" alt="An external image">
statify_text
此辅助函数会自动将给定字符串中配置在 statify_domains
配置项中的所有域中的图像statify化。
使用方法
if (function_exists('statify_text')) { $text = statify_text($text); }
清除文件
要手动清除所有缓存文件,可以使用 artisan 任务。
php artisan static-image-cache:clear
配置
-
enabled
: 定义是否激活代理和图像存储。可以是true
、false
或debug
(如果为debug
,则包将与app.debug
配置值同步标志) -
cache_path_prefix
: 相对于public_path
的路径前缀。图像将存储在此路径。此路径也将用作代理URL前缀。 -
statify_domains
: 包含所有将在调用statify_text
函数时statify化的域的数组。
升级指南
从 v1.x 到 v2.0
所有对 staticImage()
的使用都需要替换为新函数 static_image()
。