我会尽力解释我们公司遇到的问题:
所以我在不同的服务器上有几种形式。所有人都被发送以使用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.
答案 0 :(得分:1)
好吧,根据您的更新...并从我的本地计算机运行dig
进行确认,您的securitasdirect.fr
域在公共可访问的DNS服务器上没有设置MX记录。
在您的网络内部,您可能(甚至可能)使用具有MX记录的不同DNS服务器,因此您可以在内部向@fr
发送电子邮件,而在外部则无法正常工作。
更新在我写这个答案时不确定你是否正在改变事情,但似乎我现在获得了securitasdirect.fr
的有效MX回报。
除此之外,securitasdirect.fr
在securitasdirect.es
通过时未通过rDNS测试(请参阅:http://www.mxtoolbox.com)。这可能也会干扰邮件传递。