【问题标题】:Email sent via sendmail showing wrong 'from' address when sent via text message通过 sendmail 发送的电子邮件在通过短信发送时显示错误的“发件人”地址
【发布时间】:2013-10-31 17:12:27
【问题描述】:

我有一个运行 python 脚本的 cronjob,它会定期向我发送包含状态更新的电子邮件。在周末,我更喜欢通过文本工作,所以我将其发送到 myphonenumber@vtext.com。这工作正常,除了“发件人”地址在转到电话时不正确。当它被发送到一个普通的电子邮件地址时,它会正确显示。出于某种原因,当它通过文本时,它会将“发件人”地址显示为“myusername@servername.wndowsdomain.local”。这可能只是一个 Verizon 短信的事情,但如果可能的话,我想弄清楚如何修复它,因为我希望为这个工具添加一些回复功能。

脚本所在的机器正在运行 Ubuntu 12.04。

这是我发送电子邮件的简单 python 函数:

def sendMail(to,text):
    msg = MIMEMultipart('alternative')
    msg['Subject'] = "Weekend Report"
    msg['From'] = 'servername@mydomain.com'
    msg['To'] = to
    msg.attach(MIMEText(text,'plain'))
    p = Popen(["/usr/sbin/sendmail", "-t"], stdin=PIPE)
    p.communicate(msg.as_string())

使用 smtplib 和 gmail 帐户之类的东西会更好吗?

【问题讨论】:

  • 看起来与 IPv6 相关。只是一个提示/猜测:-)

标签: python email sms sendmail


【解决方案1】:

Sendmail:设置信封发件人

您可以尝试设置“信封发件人”地址(在 SMTP 会话中使用的发件人地址)。

p=Popen(["/usr/sbin/sendmail","-t","-i","-fservername@mydomain.com"],stdin=PIPE)

评论:我添加了与设置信封发件人无关的缺少的-i 命令行选项。

【讨论】:

    猜你喜欢
    • 2011-02-01
    • 2011-07-21
    • 1970-01-01
    • 2011-07-01
    • 1970-01-01
    • 2011-05-18
    • 2014-04-11
    • 1970-01-01
    • 2017-02-03
    相关资源
    最近更新 更多