Heroku部署Django应用无法创建Sendgrid附加组件提示用户状态被封禁如何解决
解决方案
一、处理Heroku账号封禁问题
报错信息:
Item could not be created.... **User- user status banned**
该报错核心原因是你的Heroku账号被平台限制使用邮件类附加组件,优先按以下步骤处理账号问题:
- 登录Heroku账号控制台,查看站内通知的具体封禁原因,常见触发限制的场景包括:未完成账号实名认证、绑定的支付方式验证未通过、存在资源滥用记录、违反平台服务条款
- 根据封禁提示提交申诉,对应准备证明材料:如果是支付验证问题补充有效支付凭证,如果是滥用误判提交应用合规说明,明确你的Django应用仅用于正常用户注册验证邮件发送,无垃圾邮件发送行为
- 账号申诉通过解封后,即可正常添加SendGrid附加组件完成配置
二、账号暂时无法解封的替代方案
无需使用Heroku官方的SendGrid附加组件,直接独立集成邮件服务即可实现邮箱验证功能:
- 自行注册SendGrid独立账号,完成身份验证后,创建发件人身份、生成邮件发送权限的API密钥
- 在Django项目的配置文件中直接配置SendGrid参数,不需要依赖Heroku插件注入环境变量,参考配置如下:
# settings.py EMAIL_BACKEND = 'sendgrid_backend.SendgridBackend' SENDGRID_API_KEY = '你自己生成的SendGrid API密钥' DEFAULT_FROM_EMAIL = '已完成验证的发件人邮箱' SENDGRID_SANDBOX_MODE_IN_DEBUG = False
- 将
django-sendgrid-v5依赖添加到项目的requirements.txt文件中,重新推送代码到Heroku部署即可生效 - 若SendGrid也无法使用,可替换为其他第三方邮件推送服务,仅需调整对应Django邮件后端的配置参数即可
内容的提问来源于stack exchange,提问作者akande olayinka
相关产品推荐
相关产品推荐

