首页 文章

PHP发送MIME电子邮件...不再起作用

提问于
浏览
2

我刚刚从共享服务器切换到虚拟专用服务器 . 整个网站都有效,但我的邮件表单已经按照以前的方式退出发送MIME电子邮件 .

以前在服务器切换之前出现的内容:

你好

现在在电子邮件中显示的内容(看起来好像我的客户端不支持MIME):

内容类型:multipart / alternative; boundary =“== DL-bound_b08bcfabdc459ae7e87e493a984115b3”这是来自Example.com的朋友的多部分MIME消息 . 如果您正在阅读此内容,我们似乎有一条要传递的邮件,但您的邮件客户端未设置为接收这些类型的邮件 . 对于给您带来的不便,我们深表歉意:( - == DL-bound_b08bcfabdc459ae7e87e493a984115b3内容类型:text / plain; charset = iso-8859-1 Content-Transfer-Encoding:7bit hallo fwend

是否有PHP中的某些开关或我需要打开发送MIME的东西?

1 回答

  • 1

    看起来 Headers 是在消息的正文部分发送的 . 我曾经有过这个问题 .

    可能的原因是:

    1. EOL
    我使用"\r\n"作为MIME Headers 的eol(遵循规范),但(共享)服务器需要"\n"

    2. Last header
    有些邮件服务器会添加一些自己的 Headers . 如果最后一个 Headers 以"\n"结尾并且邮件服务器也可能搞乱了 .

    3. Empty header
    导致$ header中的"\n\n"的空标头会破坏标头 . "\n\n"又名"empty line"标记了电子邮件 Headers 部分的末尾(或正文的开头)

相关问题