发送到交换服务器的 PHP 电子邮件被分成两个地址

发布于 2024-11-09 14:09:12 字数 1039 浏览 0 评论 0原文

我将尽力解释我们公司遇到的问题:

所以我在不同的服务器上有几种表格。全部发送都是用PHP中的mail()函数发送邮件到邮件地址[电子邮件受保护]

现在我注意到一个奇怪的行为:当表单托管在我们的服务器上时(我说的是我们的 apache 服务器,邮件由交换服务器处理),它们可以很好地到达那里的地址。 但是,当表单托管在互联网上的其他任何位置时,电子邮件将到达地址 [email protected]

问题可能是什么? SMTP 配置 ?交换服务器上的一组规则?

对于电子邮件及其发送时的处理方式,我几乎是一个新手......

谢谢您的帮助。

编辑:根据 MarcB 的建议,我在 shell 中尝试了以下操作:

XXXX:~$ nslookup -type=mx securitasdirect.es
Server:     10.40.144.166
Address:    10.40.144.166#53

securitasdirect.es  mail exchanger = 10 smtp.securitasdirect.es.

XXXX:~$ host -t mx securitasdirect.fr
securitasdirect.fr has no MX record
XXXX:~$ host -t mx securitasdirect.es
securitasdirect.es mail is handled by 10 smtp.securitasdirect.es.

I'll try to explain the problem we have at my company the best I can :

So I have several forms across different servers. All are sent up to send emails with the mail() function in PHP to the email address [email protected]

Now I've noticed a weird behavior : when the forms are hosted on our server (I'm talking about our apache server, the mails are handled by an exchange server) they arrive fine at the address up there.
But when the forms are hosted anywhere else on the internet, the emails arrive at the address [email protected]

What could the problem be ? SMTP configuration ? A set of rules at the exchange server ?

I am pretty much a newbie when it comes to emails and how they're handled when they're sent...

Thank you for your help.

EDIT: As per MarcB recommendation I tried the following in the shell :

XXXX:~$ nslookup -type=mx securitasdirect.es
Server:     10.40.144.166
Address:    10.40.144.166#53

securitasdirect.es  mail exchanger = 10 smtp.securitasdirect.es.

XXXX:~$ host -t mx securitasdirect.fr
securitasdirect.fr has no MX record
XXXX:~$ host -t mx securitasdirect.es
securitasdirect.es mail is handled by 10 smtp.securitasdirect.es.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

耳钉梦 2024-11-16 14:09:12

好吧,根据您的更新...并从我的本地计算机运行 dig 来确认,您的 securitasdirect.fr 域在可公开访问的 DNS 服务器上没有设置 MX 记录。

在您的网络内部,您可能(甚至可能)使用具有 MX 记录的不同 DNS 服务器,因此您可以在内部将电子邮件发送到 @fr,而在外部则无法正常工作。

更新不确定在我撰写此答案时您是否正在更改内容,但似乎我现在获得了 securitasdirect.fr 的有效 MX 返回。

除此之外,securitasdirect.fr 未通过 rDNS 测试(请参阅:http://www.mxtoolbox.com ),而 securitasdirect.es 通过。这也可能会干扰邮件投递。

Alright so based on your update... and running dig from my local machine to confirm, your securitasdirect.fr domain has no MX records setup on the publicly accessible DNS servers.

Internally in your network, it's possible (likely even) you use different DNS servers which have MX records and hence internally you can deliver email to @fr while externally it's not working.

Update not sure if you're changing things as I write this answer, but it seems like I'm now getting a valid MX return for securitasdirect.fr.

Beyond that, securitasdirect.fr fails the rDNS test (see: http://www.mxtoolbox.com) while securitasdirect.es passes. It's possible this is also interfering with mail delivery.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文