You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Filament 3本地开发远程存储图片加载失败修复求助

Filament 3 远程FTP存储图片预览不显示的解决方法

1. 补全文件系统磁盘的URL配置

Filament生成图片预览需要明确的远程文件访问地址,修改config/filesystems.php中的FTP磁盘配置,添加url参数并启用被动模式(避免防火墙拦截):

'ftp' => [
    'driver' => 'ftp',
    'host' => env('FTP_HOST'),
    'username' => env('FTP_USERNAME'),
    'password' => env('FTP_PASSWORD'),
    'port' => (int) env('FTP_PORT', 21),
    'root' => env('FTP_ROOT'),
    'url' => 'http://644.211.222.122', // 远程服务器公网访问地址,对应FTP_ROOT的public目录
    'passive' => true,
    'ssl' => false, // 按需启用,若FTP用SSL则改为true
    'timeout' => 30,
],

执行命令刷新配置:

php artisan config:clear

2. 确保Filament资源指定正确磁盘

在你的Filament资源的表单和表格组件中,明确指定使用ftp磁盘:

// 表单上传组件
Forms\Components\FileUpload::make('image')
    ->disk('ftp')
    ->image()
    ->previewable(),

// 表格图片预览列
Tables\Columns\ImageColumn::make('image')
    ->disk('ftp'),

3. 检查远程文件权限与可访问性

  • 登录FTP客户端,确认上传的图片文件权限为644,目录权限为755,确保Web服务器能读取这些文件
  • 直接在浏览器访问图片的完整URL(例如http://644.211.222.122/xxx.jpg),如果无法访问,检查远程服务器的Web根目录是否指向public文件夹,以及防火墙是否开放80端口

4. 清理相关缓存

执行以下命令彻底清除各类缓存:

php artisan view:clear
php artisan route:clear
php artisan filament:clear-cache

内容的提问来源于stack exchange,提问作者Leg3nd4ry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 02:48:18