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

Laravel存储文件报错"failed (40: Too many levels of symbolic links)"求助

步骤1:清理错误的符号链接

  1. 登录Hostinger VPS终端(CloudPanel内置终端或SSH工具),进入Laravel项目根目录(替换为你的实际项目路径,比如/var/www/your-domain.com):
    cd /var/www/your-domain.com
    
  2. 删除public目录下的错误storage链接:
    rm public/storage
    
  3. 检查storage/app/public目录是否存在循环链接(比如误创建了指向自身的storage),如果有则删除:
    rm -rf storage/app/public/storage
    

步骤2:重新创建正确的绝对路径符号链接

使用绝对路径创建链接,避免相对路径导致的层级循环问题:

ln -s /var/www/your-domain.com/storage/app/public /var/www/your-domain.com/public/storage

注意:将/var/www/your-domain.com替换为你实际的Laravel项目根目录路径。

步骤3:修复目录权限

403错误通常和权限有关,执行以下命令设置正确权限:

# 将目录归属给Web服务器用户(CloudPanel默认是www-data)
chown -R www-data:www-data storage/ public/
# 设置基础目录权限
chmod -R 755 storage/ public/
# 开放存储目录的写入权限
chmod -R 775 storage/app/public/

步骤4:确认Web服务器允许跟随符号链接

在CloudPanel中进入你的站点设置,编辑Nginx/Apache配置:

  • 若使用Nginx,确保server块内包含允许符号链接的配置:
    location / {
        try_files $uri $uri/ /index.php?$query_string;
        disable_symlinks off;
    }
    
  • 保存配置后重启Web服务器(CloudPanel面板内有重启按钮)。

步骤5:清除Laravel缓存

php artisan cache:clear
php artisan config:clear

完成以上步骤后,重新访问https://你的域名/storage/icons/目标图片.png,应该可以正常加载。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 21:03:13