发送到Exchange服务器的PHP电子邮件分为两个地址

时间:2011-05-24 15:11:18

标签: php email exchange-server

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

所以我在不同的服务器上有几种形式。所有人都被发送以使用PHP中的mail()功能发送电子邮件到电子邮件地址 email@ourcompany.fr

现在我注意到了一个奇怪的行为:当表单托管在我们的服务器上时(我说的是我们的apache服务器,邮件由交换服务器处理),他们很好地到达那里的地址。 但是当表格在互联网上的任何其他地方托管时,电子邮件会到达地址 email@ourcompany.es

问题是什么? 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.

1 个答案:

答案 0 :(得分:1)

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

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

更新在我写这个答案时不确定你是否正在改变事情,但似乎我现在获得了securitasdirect.fr的有效MX回报。

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