我有一个 PHP 客户输入表单,它将 SMTP 邮件发送到托管该表单的公司。由于某种原因,电子邮件没有到达收件人的电子邮件。如果我用不在域中的任何其他电子邮件地址进行替换,则效果很好。我还可以在 To: 行列出多个地址,其他人将收到电子邮件,但不会收到所需的 info@ 电子邮件地址。我无法更改发送域,因为当它们不匹配时,我的虚拟主机不会发送邮件。我认为这可能与发送电子邮件地址和接收相同有关,因此我将 From: 地址更改为“onlineform@”而不是“info@”,但这并没有什么区别。
我对这里发生的事情感到困惑。我可以直接从任何其他帐户向“info@”电子邮件地址发送电子邮件,并且效果很好。我已经要求他们检查他们的客户端和服务器垃圾邮件文件夹,它们都很干净。关于发生了什么或如何进一步诊断问题的任何想法?我已将代码简化为下面的相关部分,并且片段代码执行相同的操作。
<?php
$email_to = "info@domain.tld";
$email_subject = "Subject line here";
$email_message = "Email body here.";
$headers = 'From: onlineform@domain.tld'."\r\n".
'Reply-To: noreply@domain.tld'."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>