为什么 PHP 的 `mail()` 函数会抛出'Additional_header 中发现多个或格式错误的换行符”?

Linda Hamilton
发布: 2024-11-21 06:30:08
原创
774 人浏览过

Why is PHP's `mail()` Function Throwing

“PHP mail() 错误:Additional_header 中发现多个或格式错误的换行符”解释

最近,许多 PHP 开发者都遇到了令人困惑的问题发送电子邮件时出现“Additional_header 中发现多个或格式错误的换行符”错误。尽管没有修改脚本,这个问题还是突然出现在很多人身上。此错误背后的罪魁祸首在于最近对 PHP 版本进行的更新。

以前,PHP 允许在additional_headers 中添加额外的换行符。然而,为了缓解安全漏洞,PHP 收紧了其限制。 extra_headers 参数中的任何换行符现在都被视为“多个或格式错误”。这意味着标头必须完全清理,排除任何多余的换行符。

此外,消息正文应放置在 message 参数中,而不是 extra_headers 参数中。任何尝试在additional_headers中包含电子邮件消息也会触发此错误。

解决方案:

要解决此问题,请按照以下步骤操作:

  • 删除不必要的换行符:从additional_headers参数中消除所有多个或格式错误的换行符。
  • 将邮件头与消息分开:专门为电子邮件正文使用消息参数,包括多部分或附件。标头应限制在additional_headers参数内。

通过实现这些更改,您可以避免“Error with PHP mail(): Multiple or Malformed Newlines Found in Another_header”并使用 PHP 的 mail 成功发送电子邮件() 函数。

详细信息请参阅 PHP 安全 Bug 报告:https://bugs.php.net/bug.php?id=68776

以上是为什么 PHP 的 `mail()` 函数会抛出'Additional_header 中发现多个或格式错误的换行符”?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板