【发布时间】:2013-07-21 07:29:00
【问题描述】:
我在我的 django 网站中使用 gmail smtp。我有一个联系表格,用户在其中输入电子邮件和消息,然后我向管理员发送邮件:
email = EmailMessage('email subject', 'email message', settings.EMAIL_HOST_USER,
['admin.mysite@gmail.com'],
headers = {'Reply-To': 'user@foo.bar',
'Sender': 'user@foo.bar','from': 'user@foo.bar','Return-Path': 'user@foo.bar'})
email.send(fail_silently=False)
电子邮件已正确发送/接收,但当管理员客户端在 gmail 中选择回复时,它始终回复 settings.EMAIL_HOST_USER 而不是用户地址。在电子邮件原始标题上,From 和 Return-path 设置为 setting.EMAIL_HOST_USER
【问题讨论】:
-
你是说你是通过 gmail 的 smtp 服务器 smtp.gmail.com 发送消息吗?而且,当收件人收到邮件时,发件人的地址(以及对地址的回复)显示为与您用来发送邮件的 gmail 帐户关联的 gmail 地址,而不是您在其中指定的发件人地址你的代码?
-
是的,标头的某些部分被 smtp.gmail.com 忽略。我想它一定是一个安全功能。我目前希望在我的服务器上使用 exim4 而不是 gmail
-
> 由于 Gmail 的限制,我有同样的问题一年了。 > > 但是今天我重试并成功了,谷歌似乎改变了它的政策。
python # settings.py .... DEFAULT_FROM_EMAIL = 'Infoma Admin<no-reply@infoma.co.nz>' Django 2.1.7