Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过smtp-relay.gmail.com发送电子邮件最终会连接到本地smtp服务器_Php_Email_Smtp_Gmail_Google Workspace - Fatal编程技术网

Php 通过smtp-relay.gmail.com发送电子邮件最终会连接到本地smtp服务器

Php 通过smtp-relay.gmail.com发送电子邮件最终会连接到本地smtp服务器,php,email,smtp,gmail,google-workspace,Php,Email,Smtp,Gmail,Google Workspace,我有一个Gsuite帐户。我设置了一个规则,允许通过gmail服务器进行SMTP中继,并将我的IP列为白名单。另外,发件人地址是我在Gsuite注册的域名。我所有的MX记录都指向谷歌 当试图发送消息时,日志显示gmail接受了连接,但反过来它又返回到我的本地SMTP服务器 试过PHP PEAR mail和PHP编译器,同样的问题 日志是这样开始的: Connection: opening to smtp-relay.gmail.com:25, timeout=300, options=array

我有一个Gsuite帐户。我设置了一个规则,允许通过gmail服务器进行SMTP中继,并将我的IP列为白名单。另外,发件人地址是我在Gsuite注册的域名。我所有的MX记录都指向谷歌

当试图发送消息时,日志显示gmail接受了连接,但反过来它又返回到我的本地SMTP服务器

试过PHP PEAR mail和PHP编译器,同样的问题

日志是这样开始的:

Connection: opening to smtp-relay.gmail.com:25, timeout=300, options=array ()
Connection: opened
SERVER -> CLIENT: 220-mylocalhosting.com ESMTP Exim 4.89 #1 Wed, 17 May 2017 23:44:41 -0400 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail.
从那以后,如果使用我自己系统的身份验证,我可以发送电子邮件

简言之,我指定gmail中继服务器,但我的邮件最终会从本地邮件服务器发出。我不明白为什么

更新:如果PHP脚本以“root”身份运行,gmail将接收消息并按预期进行处理:

Connection: opening to smtp-relay.gmail.com:25, timeout=300, options=array ()
Connection: opened
SERVER -> CLIENT: 220 smtp-relay.gmail.com ESMTP 137sm1646549itk.4 - gsmtp
但我不能让它像普通用户一样


任何帮助都将不胜感激。

发现问题:这是WHM SMTP限制中的设置

您是否有任何指向本地主机的Gmail DNS记录?您能否尝试在FQDN上的服务器上进行NSLookup,并查看得到的结果?