在将某些网站迁移到VPS之后,我发现PHP mail()发生了一个非常奇怪的情况。
我有一个共享主机方案的网站。在网站上,有PHP脚本处理的联系表单和其他此类表单。 PHP mail()函数用于发送包含信息的电子邮件。
然后我收到该域名的电子邮件(我将其称为example.com用于这些目的)。这些电子邮件的MX记录指向Google Apps for Business,这是他们多年来一直指向的地方。当站点在共享主机上时,PHP mail()函数运行良好,所有电子邮件都收到了发送的信息。
最近,我已将网站移至VPS并将example.com DNS记录移至指向共享主机并进入VPS中的文件夹。
最初的共享主机方案是123-reg(英国主机),也是example.com域名目前注册的地方。 VPS在GoDaddy。
我已经测试过发送电子邮件到我的个人电子邮件地址(在GoDaddy)并且我成功收到了。然后,我尝试向example.com上的电子邮件发送直接电子邮件,他们收到了这些电子邮件。但是在尝试从PHP mail()发送电子邮件到example.com电子邮件时仍然没有运气。
通过这个我已经确定PHP mail()函数在某些情况下成功运行,而example.com电子邮件可以使用直接电子邮件但是当尝试使用PHP函数时会出现中断和e - 邮件不通过。是的,我检查了垃圾邮件。
关于为什么会发生这种情况的任何想法?
我刚刚发现这篇文章:
https://support.google.com/a/answer/55299?hl=en
虽然我不确定如何按照他们的说法解决问题:
To resolve this issue, notify the mail agent running on the server that hosts your website that it is not also responsible for handling mail for your domain.
我如何在VPS上这样做?这是通过WHM吗?
这里还有一个主题:
https://productforums.google.com/forum/#!topic/gmail/V6AfTGHFKYI
似乎表明Google Apps无法以正常方式使用PHP mail()?