2

我在我的 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 设置

4

2 回答 2

6

Google 违反了定义 SMTP 服务器预期操作的 RFP,重写了标头。这可能是您的问题的根本原因:http: //lee-phillips.org/gmailRewriting/

于 2013-08-10T21:03:35.533 回答
1

如果您使用 smtp.gmail.com 发送邮件,并且发件人的电子邮件地址不是 yourgoogleemailname@gmail.com,那么 Gmail 将重写标头并将发件人地址设置为 yourgoogleemailname@gmail.com。有关更多信息和可能的解决方案,请参阅http://lifehacker.com/111166/how-to-use-gmail-as-your-smtp-server 。

于 2013-07-22T18:02:14.177 回答