
laravel上传图片,目录有图片, 访问404
发布日期:2025-04-04 05:12:37
浏览次数:12
分类:精选文章
本文共 1258 字,大约阅读时间需要 4 分钟。
Laravel 文件系统配置及存储上传解决方案
Laravel 文件系统配置文件位置
Laravel 项目的文件系统配置文件位于 config/filesystems.php
。这是一个重要的配置文件,用于定义文件存储的驱动、根路径、访问 URL 以及可见性等参数。
文件存储配置详解
配置文件中 public
部分的具体设置如下:
'public' => [ 'driver' => 'local', 'root' => storage_path('app/public'), 'url' => env('APP_URL') . '/storage', 'visibility' => 'public',]
- driver:使用本地存储驱动,适用于 development 和 small production 环境。
- root:定义存储文件的实际路径,使用
storage_path('app/public')
会生成一个相对于项目根目录的路径。 - url:指定存储路径的访问 URL,结合
env('APP_URL')
可以让测试环境和生产环境共用同一配置。 - visibility:文件存储是否可见,设置为
public
可让文件通过 web 访问。
文件上传实现代码
上传文件时,可以参考以下代码:
// 获取文件扩展名$ext = $file->getClientOriginalExtension();// 获取文件绝对路径$realPath = $file->getRealPath();// 生成唯一文件名$filename = date('Ymdhis') . '-' . uniqid() . '.' . $ext;// 上传文件到 `public` 硬盘$bool = Storage::disk('public')->put($filename, file_get_contents($realPath));
文件存储路径位置
上传成功后,文件会被存储到 storage/app/public
目录下。通过上述配置和代码,只需调用 Storage::disk('public')
接口即可实现文件存储。
测试环境配置(Mac Homestead)
如果使用 Mac Homestead 作为开发环境,可以按照以下步骤操作:
启动虚拟机
vagrant upvagrant ssh
获取 root 权限
sudo -i
进入项目目录
cd 到你的项目根目录
创建存储软链接(重要)
php artisan storage:link
这一步会在 public
文件夹下创建 storage
软链接,指向 storage/app/public
目录下的文件。
测试访问路径
完成以上步骤后,可以通过以下 URL 访问存储的文件:
test.com/storage/filename.png
通过这种方式,你就可以快速访问和验证存储到 storage/app/public
的文件。
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2025年04月23日 21时05分41秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
CentOS 7 安装 postgreSQL 9.4
2025-03-31
CentOS 7 巨大变动之 systemd 取代 SysV的Init
2025-03-31
centos 7 静态IP,指定DNS
2025-03-31
flask框架面向移动端的虚拟物品订购平台毕设源码+论文
2025-03-31
flask框架高校助学及勤工俭学管理系统(毕设源码+论文)
2025-03-31
flask框架高校竞赛信息管理系统(毕设源码+论文)
2025-03-31
flask框架魔方教学网站毕设源码+论文
2025-03-31
Flatterer: 快速JSON转换工具使用指南
2025-03-31
Flex / PHP Security Basics - Part One
2025-03-31
FLEX 4 :选择本地文件编辑
2025-03-31
Flex 与 spring mvc 整合 BlazeDB
2025-03-31
java 重载、重写、重构的区别
2025-04-01
Java 链表对象 链表翻转 对象中有对象的翻转 对象链表翻转指针
2025-04-01
Java+MySQL实现学生管理系统
2025-04-01
JAVA- 清除数组重复元素
2025-04-01
Java---设计模式app小软件汇总应用
2025-04-01
Java-JUC(五):闭锁(CountDownLatch)
2025-04-01
java-如何给表格添加分页
2025-04-01
Java-笔记12
2025-04-01
java-设计模式-装饰器设计模式,代理设计模式和继承三种扩展方法的比较
2025-04-01