使用新域发送电子邮件?
Posted
技术标签:
【中文标题】使用新域发送电子邮件?【英文标题】:Send emails with a new domain? 【发布时间】:2015-09-19 07:18:26 【问题描述】:我不熟悉 Web 应用程序中的电子邮件系统。我已经构建了一个 Django 应用程序,我想添加一个发送电子邮件功能。我购买了一个像“mydomain.com”这样的域,我想从“services@mydomain.com”发送电子邮件。这可能只使用山魈吗?
编辑
我只有域,还没有使用我的域创建任何电子邮件地址,这是我第一次负责这个,我想知道如何创建电子邮件地址并使用它来发送消息我的 django 应用和山魈。
我在我的设置中使用“gmail”帐户进行此操作:
# EMAIL
DEFAULT_FROM_EMAIL = 'myaccount@gmail.com'
SERVER_EMAIL = 'myaccount@gmail.com'
EMAIL_HOST_USER = 'myaccount@gmail.com'
EMAIL_HOST_PASSWORD = 'myPassWord'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = '587'
EMAIL_USE_TLS = True
【问题讨论】:
这不是真正的 Django 问题。这实际上是 ***.com/questions/1332510/… 和/或 ***.com/questions/5431631/… 的副本 Mandrill - 像大多数外发电子邮件服务器一样 - 并不真正关心(太多)您“从”谁发送电子邮件。无需在 Mandrill 中创建外发电子邮件地址。 【参考方案1】:mandrill 网站上的 python 代码有一个非常清楚的例子,说明使用它的 SMTP 身份验证非常适合 Django:
EMAIL_HOST = 'smtp.mandrillapp.com'
EMAIL_HOST_USER = MANDRILL_USERNAME
EMAIL_HOST_PASSWORD = MANDRILL_PASSWORD
EMAIL_PORT = 587
EMAIL_USE_TLS = True
【讨论】:
感谢您的回答,我编辑了问题。不存在使用我的域创建的任何电子邮件,是否可以使用 mandrill 创建它们?是否可以使用另一个“发件人”的帐户发送电子邮件? 我已经尝试过了,但没有用。你知道缺少什么吗? 请注意,您的 EMAIL_HOST_PASSWORD 必须是 Mandrill API key -- 而不是您的 Mandrill 帐户密码。【参考方案2】:Djrill 是 Django 的 Mandrill 电子邮件后端。它使用 Mandrill HTTP API 而不是 SMTP,如果您在阻止传出 SMTP 端口的环境中运行,或者您需要在发送消息后从 Mandrill 获取扩展状态,这会很有帮助。
否则,使用 Mandrill 的 SMTP 集成就可以了,正如其他答案中所建议的那样。
【讨论】:
感谢您的回答,我阅读了有关 Djrill 的信息,但我在我的项目中使用 django.core.email,我想尽可能少地更改代码。我用一些额外的东西编辑了这个问题。 django.core.mail 旨在支持pluggable email backends。 Djrill 是使用 Mandrill 进行发送的可插拔后端的实现。因此,它与所有标准 django.core.mail send functions、EmailMessage 对象和其他 django.core.mail 功能“正常工作”。 感谢您的回答,我使用 Djrill 并按照其配置步骤与 mandrill smpt 一起使用。您对如何更改收件箱中的名称有任何想法吗?例如,我通过我在 mandrill 中的帐户从我的个人帐户发送一封电子邮件,并且在收件箱(主题旁边)中显示我的电子邮件,而不是我的姓名,是否可以在那里显示自定义文本? 我认为您正在寻找各种 Django 发送邮件功能的from_email
参数。您可以提供显示名称和电子邮件地址:例如,from_email="Support Team <help@example.com>"
。这不是 Djrill 特有的——它适用于大多数 Django 电子邮件后端。请参阅 Django sending docs 和 Djrill sending docs。 (也可以在第 3 步中使用 example sending code。)
我在 Djrill 文档中找到了 here。再次感谢。以上是关于使用新域发送电子邮件?的主要内容,如果未能解决你的问题,请参考以下文章
Android:使用电子邮件意图发送电子邮件,可以在发送之前更改消息吗?
使用 codeigniter 电子邮件库通过电子邮件发送 ical 邀请