campaigningbureau/laravel-static-image-cache

将外部图像存储为静态文件

v10.0 2023-12-04 14:46 UTC

README

将外部图像存储为静态文件

通过代理路由替换URI。

当调用此代理路由时,原始图像将缓存在配置的目录中并返回。

如果请求的文件已经被缓存,它将被直接由Web服务器返回。

安装

composer require campaigningbureau/laravel-static-image-cache

支持的版本

设置

将服务提供者添加到 app.php 提供者数组中

/*
 * Package Service Providers...
 */
CampaigningBureau\LaravelStaticImageCache\Provider\LaravelStaticImageCacheProvider::class,

使用方法

此包提供了两个辅助函数:static_imagestatify_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: 定义是否激活代理和图像存储。可以是 truefalsedebug(如果为 debug,则包将与 app.debug 配置值同步标志)

  • cache_path_prefix: 相对于 public_path 的路径前缀。图像将存储在此路径。此路径也将用作代理URL前缀。

  • statify_domains: 包含所有将在调用 statify_text 函数时statify化的域的数组。

升级指南

从 v1.x 到 v2.0

所有对 staticImage() 的使用都需要替换为新函数 static_image()