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

将Laravel 8应用部署到cPanel虚拟主机时遇序列化闭包错误

Laravel 8部署cPanel序列化闭包错误解决方案

核心修复步骤

1. 服务器端重新生成缓存与密钥

本地生成的缓存文件包含本地环境信息,上传到服务器后会引发兼容问题。通过cPanel终端或SSH执行以下命令:

  • 清除所有缓存:
    php artisan cache:clear
    php artisan config:clear
    php artisan route:clear
    php artisan view:clear
    
  • 强制重新生成应用密钥:
    php artisan key:generate --force
    
  • 生产环境可重新生成配置缓存:
    php artisan config:cache
    

2. 修正.env文件格式

你的.env中DB_PASSWORD使用了单引号,Laravel的.env变量无需添加引号,直接修改为:

DB_PASSWORD=pass

多余的引号会导致配置解析异常,进而触发序列化错误。

3. 配置storage目录正确权限

Laravel需要storage目录具备写入权限,执行以下命令(替换your_cpanel_user为你的cPanel用户名):

chmod -R 755 storage
chown -R your_cpanel_user:your_cpanel_user storage

4. 排查配置文件中的闭包

如果你的config/目录下的配置文件(如app.php、自定义配置)使用了闭包,执行config:cache时会触发序列化失败。找到并移除这些闭包,改用静态值或其他非闭包方式实现逻辑。

5. 重新上传核心文件

若上述步骤无效,可能是上传时文件损坏。删除服务器上的vendor和bootstrap/cache目录,重新从本地完整上传这两个目录,确保文件完整性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 16:15:49