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

Laravel 5.6中store()方法始终使用默认磁盘问题解决

Laravel 文件上传路径不符合预期的解决办法

之前我为了把上传的图片存到public目录下的storage/cars文件夹,做了这两步配置:

  • 使用了这段上传代码:
$file->store('storage/cars/' . $img . 'uploads')
  • 在config/filesystems.php里配置了自定义磁盘:
'uploads' => [ 
    'driver' => 'local', 
    'root' => public_path(), 
],

一开始这么用是正常的,但后来哪怕保留了同样的配置,文件还是默认传到了storage/app/storage/cars目录,完全没按照预期放到public下面。

问题根源

仔细看store方法的参数就发现问题了:我之前错误地用点号把路径和磁盘名拼在了一起,而Laravel的store方法第二个参数才是指定磁盘的位置,应该用逗号分隔两个参数。

修正后的代码

把上传代码改成这样就可以了:

$file->store('storage/cars/' . $img , 'uploads')

修正之后,文件就会按照uploads磁盘的配置,直接上传到public目录对应的路径里了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:40:45