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

Laragon环境下Laravel存储软链接异常问题求助

解决Laragon环境下Laravel存储链接错误的问题

我之前在Laragon里部署Laravel项目时也碰到过几乎一模一样的问题,大概率是符号链接生成路径不对,或者Laragon的站点根目录配置导致的路径解析混乱。下面是一步步的解决方法:

1. 先清理错误的文件和目录

首先把那些干扰项清掉:

  • 删除public目录下错误生成的public子目录,避免后续路径混淆
  • 检查public目录下的storage链接,如果它是无效的(比如实际指向的路径不对),也删掉它

2. 确认Laragon的站点根目录设置

这一步很关键,Laragon的站点根配置错了会导致整个路径解析乱掉:

  • 打开Laragon,找到你的项目,右键点击「Site Root」选项
  • 确保它指向的是你Laravel项目的public目录,而不是项目根目录或者其他路径。比如你的项目在C:\laragon\www\my-laravel-app,那Site Root应该设为C:\laragon\www\my-laravel-app\public

3. 手动创建正确的符号链接

有时候php artisan storage:link在Windows环境下可能因为相对路径问题生成错误的链接,咱们手动来创建更靠谱:

  • 在Laragon里打开项目的终端(右键项目选「Open Terminal」)
  • 先切换到项目的public目录:
    cd public
    
  • 用Windows命令提示符创建符号链接:
    mklink /D storage ..\storage\app\public
    
    如果用PowerShell的话,执行这个命令:
    New-Item -ItemType SymbolicLink -Path .\storage -Target ..\storage\app\public
    

4. 验证链接有效性

创建完链接后,别着急测试上传:

  • 打开public/storage目录,放一个测试文件进去,然后去storage/app/public目录看看是不是同步出现了这个文件
  • 如果同步成功,说明链接是正确的

5. 检查Laravel的文件系统配置

最后确认Laravel的配置没出错:

  • 打开config/filesystems.php,找到public磁盘的配置块,确保它是这样的:
    'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('APP_URL').'/storage',
        'visibility' => 'public',
    ],
    
  • 打开.env文件,确认APP_URL和Laragon里你的站点域名一致,比如APP_URL=http://my-laravel-app.test

6. 清理缓存确保配置生效

最后执行这两个命令清一下缓存,避免旧配置干扰:

php artisan config:clear
php artisan cache:clear

做完这些步骤后,再测试文件上传,应该就能正常存入storage/app/public,并且通过public/storage访问到了,不会再出现404或者存到public/public的问题了。

内容的提问来源于stack exchange,提问作者Mikail G.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:16:04