Laravel 项目报错:The MAC is invalid.

╰半橙微兮° 2021-11-16 07:22 403阅读 0赞

在 Laravel 项目完成部署到服务器、数据库导入成功后

后台报错:

aHR0cHM6Ly9pbWFnZXMyMDE1LmNuYmxvZ3MuY29tL2Jsb2cvMTAyNDE5Mi8yMDE3MDUvMTAyNDE5Mi0yMDE3MDUyNTE5NTAzMzYyMi02MDgzMDU2MzgucG5n

原因是 Laravel 的 APP_KEY 和 encrypt() 函数加密的问题。(encrypt() 是 Laravel 的助手函数,相当于 Crypt::encrypt() 的简写形式)

一旦用 php artisan key:generate 重新生成了APP_KEY,在 desrypt() 函数解密时会报 The MAC is invalid 异常,这是由于 APP_KEY 变化导致 MAC 信息发生了变化,decrypt() 解密就报了异常。

解决方法:

方法1、重新用 encrypt() 进行加密,后台重新登录,OK。

方法2、encrypt() 加密不太利于项目移植和部署,采纳 这篇博文 的建议,暂时使用哈希加密。

原文网址:

https://www.cnblogs.com/mingc/p/6905773.html

发表评论

表情:
评论列表 (有 0 条评论,403人围观)

还没有评论,来说两句吧...

相关阅读