为什么sendmail只能发送到我的内部网络?

时间:2015-10-01 01:03:21

标签: email smtp sendmail phpmailer

我已经在我的网络服务器上安装了sendmail,并使用mail() php函数以及最近的PHPMailer将其用于内部电子邮件警报类型操作。

到目前为止一切顺利。

它确实会在我发送时发送电子邮件,但它只会传送到我的内部域名(即@ mybusiness.com)。

在某些情况下,我需要通过其他域上的电子邮件(gmail,hotmail或其他)向客户发送警报,但是在我发送邮件时不会收到这些警报。

当我将电子邮件发送到我自己以外的域时,我收到以下退回错误:

The original message was received at Wed, 30 Sep 2015 20:58:39 -0400
from localhost [127.0.0.1]

   ----- The following addresses had permanent fatal errors -----
<joe.blow@gmail.com>
    (reason: 550 Host unknown)

   ----- Transcript of session follows -----
550 5.1.2 <joe.blow@gmail.com>... Host unknown (Name server: gmail.com: host not found)

它从内部“邮件守护程序”地址反弹。这意味着它实际上并没有退出我的内部服务器。

发送它的脚本如下所示:

$email = new PHPMailer();
$email->Host         = 'mybusiness.com';
$email->ReturnPath     = 'steven@mybusiness.com';
$email->Sender         = 'steven@mybusiness.com';
$email->From          = 'steven@mybusiness.com';
$email->FromName      = 'Your Consultant';
$email->addReplyTo     = 'steven@mybusiness.com';
$email->Subject       = 'Test Email';
$email->Body          = 'Hello Joe';
$email->AltBody     = 'Hello Joe';
$email->AddAddress('joe.blow@gmail.com');
$email->isHTML(true);
$email->Send();

老实说,我没有跟踪sendmail的正确配置。我所知道的是,它在向我公司发送到我自己的域名时有效。

如果有人能够指出我需要配置的正确方向,那将会有所帮助。

感谢。

0 个答案:

没有答案