Strapi+NextJs前端登录凭证无效且收不到密码重置邮件求助
问题排查与解决方法
一、「Invalid credentials」登录失败问题
- 检查用户状态:登录Strapi后台,找到对应用户,确认状态是Active,若为Disabled,切换为启用状态即可。
- 重置用户密码:直接在Strapi后台用户详情页手动设置新密码,跳过邮件重置流程,测试是否能正常登录。
- 核对环境变量:检查Strapi项目根目录的
.env文件,确认AUTH_JWT_SECRET、密码哈希算法相关配置(如AUTH_PASSWORD_HASH_ALGORITHM)与之前正常运行时一致,避免因配置变更导致旧密码验证失效。 - 检查前端请求参数:确认NextJS前端发送的登录请求payload字段为
identifier(对应邮箱/用户名)和password,避免字段名错误(比如误传email而非identifier)。
二、密码重置邮件未收到问题
- 验证邮件服务配置:进入Strapi后台「设置-邮件插件」,检查SMTP服务器的
host、port、username、password、secure等配置是否正确,可通过后台的「测试发送」功能验证邮件服务是否正常。 - 检查垃圾邮件/拦截箱:查看邮箱的垃圾邮件、广告邮件文件夹,确认邮件未被服务商拦截。必要时可调整邮件发件人名称、主题,或给域名添加SPF/DKIM记录提升邮件可信度。
- 核对后台用户邮箱:确认Strapi后台中该用户的邮箱与你输入的完全一致,避免拼写错误(部分系统可能严格匹配大小写)。
- 查看Strapi日志:打开Strapi项目的
.strapi/logs/application.log文件,搜索邮件相关关键字(如email、forgot-password),排查是否有发送失败的错误信息;若使用了邮件队列,可尝试重启Strapi服务清除队列积压。
内容的提问来源于stack exchange,提问作者cdmt
相关产品推荐
相关产品推荐

