outlook发送邮件为啥老显示错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了outlook发送邮件为啥老显示错误相关的知识,希望对你有一定的参考价值。

设置有问题,解决步骤如下:


1、点击账户设置按钮,然后点击账户设置菜单下的帐户设置。





2、进入账户设置,选中邮件账户,点击更改。





3、进入邮件属性,点击其他设置按钮。





4、进入internet邮件电子邮件设置面板,点击发送服务器选项卡,勾选“我的发送服务器(SMTP)要求验证”,选中“使用与接收邮件服务器相同的设置”。





5、返回右键属性面板点击测试帐户设置按钮。





6、进入邮件测试面板,测试邮件发送成功。



参考技术A 出现outlook邮件发送失败可能有多种原因。 收到的错误消息的用词将因收件人的电子邮件服务提供商而异。

常见错误消息包括:
1、临时错误(“没有足够的服务器”,“连接超时”,“资源暂时不可用”,“内存不足”)
此类临时错误会随时间的推移自行消除。
尝试以下修复方法:检查错误消息。 如果指出收件人的电子邮件服务提供商将继续尝试递送自己的邮件,则自己无需执行任何操作。 否则,请等待一段时间并重新发送邮件。

2、“找不到邮箱”、“邮箱无效”或“用户未知”
用户要发送到的电子邮件地址不存在。
尝试以下修复方法:检查收件人的电子邮件地址是否存在键入错误。 确保它是收件人的当前电子邮件地址。

3、邮箱不可用
大多数时候,这与“找不到邮箱”是同一错误,但有时是收件人的帐户存在问题。
尝试以下修复方法:等待一段时间并重试。 如果仍弹回邮件,请参阅上一节“找不到邮箱”。

4、“邮箱已满”或“已超出配额”
收件人的收件箱中有太多邮件且无法再接收任何邮件。
尝试以下修复方法:就其收件箱已满问题联系收件人。

5、“主机未知”、“域查找失败”
收件人的电子邮件地址的域不存在。 如果其电子邮件地址为 someone@example.com,则“example.com”是域。
尝试以下修复方法:检查收件人的电子邮件地址是否存在键入错误。 确保它是收件人的当前电子邮件地址。 最后,确保其电子邮件服务提供商没有更改其域名,例如将“@attbi.com”更改为“@comcast.net”。

6、邮件太大
大多数电子邮件服务提供商都会对其客户可以发送或接收的任何单个邮件的大小进行限制。 用户的邮件超出了收件人的服务限制。
尝试以下修复方法:请将大型附件上载到 OneDrive 并向收件人发送一条链接,而不是随邮件发送这些附件。 可以轻松将文件上载到 OneDrive,然后在用户的电子邮件中发送一条链接。 收件人只能访问用户所选的文件。

7、错误包含“已阻止”或“已列出”,以及对“spamcop”、“dynablock”、“blackhole”或“spamhaus”等站点的引用。
邮件受到黑名单过滤器的有意阻止,因为收件人的服务提供商认为用户使用的邮件服务器是垃圾邮件源。
尝试以下修复方法:与收件人的电子邮件提供商的支持团队联系并请求取消阻止用户的帐户或域。

为啥 Outlook 不使用 text/plain 部分?

【中文标题】为啥 Outlook 不使用 text/plain 部分?【英文标题】:Why won't Outlook use the text/plain part?为什么 Outlook 不使用 text/plain 部分? 【发布时间】:2013-10-08 17:59:27 【问题描述】:

首先,你好,

使用 SwiftMailer,我正在发送 HTML+PLAIN 电子邮件。

在 Outlook 上,当将此电子​​邮件显示为纯文本时,这不是我显示的纯文本部分,而是 HTML 的自动解析版本。

有谁知道在显示纯文本时如何强制 Outlook 使用文本/纯文本部分?

我的代码执行以下操作:

$plain_body = convert_html_to_text($body);
$message->setBody($body, 'text/html')
->addPart($plain_body, 'text/plain');

$body 有一些格式和图片:

vardump($body);

<html>
<head>...</head>
<body>
<img src="logo.png"  /><br />
<img src="border.png"  /><br />
<img src="face.png"  /><br />
<p>Hello Ninj!

You requested a confirmation by email...</p>
<img src="footer.png"  />
</body></html>

$plain_body 包含一个非常干净的文本(感谢 javon):

vardump($plain_body);

"Hello Ninj!

You requested a confirmation by email..."

但在 Outlook 中查看的纯文本版本中,我看到的是 HTML 版本图片的所有 alt 属性,一行一行,然后是一些轻微格式化的文本:

公司名称

边框

某人先生

你好忍者!

您要求通过电子邮件确认...

页脚

在此先感谢所有能够提供帮助的人:)

【问题讨论】:

【参考方案1】:

不能这样做。 Outlook 使所有 3 种正文风格(HTML、RTF、纯文本)保持同步。这是在商店提供商级别完成的。

当它接收到 MIME 消息时,它使用 HTML 正文(如果可用)。保存消息后,存储提供程序使用 HTML 正文生成纯文本正文(PR_BODY 属性)。

【讨论】:

感谢您的回答,请允许我进一步尝试:如果 Outlook 不关心它,我们为什么还要包含文本的文本/纯文本版本?这个替代体不是为了这个目的而设计的:在不呈现 HTML 时显示而不是 HTML? 如果您要发送到 Outlook,纯文本不会做任何事情,除非它是唯一的正文部分。请记住,Outlook 不会以 MIME 格式存储邮件。一旦收到来自 POP3/IMAP4/等的消息。服务器并存储在 Outlook 存储中,Outlook 不知道邮件来自哪里以及它的 MIME 格式是什么。 @Ninj:那里不仅有 Outlook,还有 Outlook。其他客户端将使用text/plain 部分。 SpamAssassin 不喜欢纯 HTML 的邮件。

以上是关于outlook发送邮件为啥老显示错误的主要内容,如果未能解决你的问题,请参考以下文章

exchange 2016 能发送邮件,不能接受邮件

已发送邮件不显示带有自定义 Outlook 消息表单的邮件跟踪

Outlook邮件接收和发送服务器设置

为啥我的OUTLOOK显示脱机啊

Excel 通过 Outlook 发送电子邮件时如何处理错误?

新时期邮件群发软件怎么样?为啥不用发件箱就能发呢?