PHP无法在mail.OURDOMAIN.com端口25连接到邮件服务器....但是,我可以通过telnet测试邮件

时间:2012-01-17 22:56:26

标签: php winapi smtp

网上有关于此错误的上百篇帖子: 无法连接到“mail.OURDOMAIN.com”端口25上的邮件服务器,验证php.ini中的“SMTP”和“smtp_port”设置或使用ini_set()

以下是事实:

在我们的网站被迫加入公司大型SMTP服务器池之前,我们的配置工作正常(使用由另一个组管理的SMTP服务器)。一旦我们将SMTP服务器条目指向新的SMTP服务器,我们就会遇到“连接失败”的问题。

我可以telnet到mail.OURDOMAIN.com 25并成功通过手动发送测试邮件 - 它应该可以工作。

我在php.ini中有正确的设置,我重新启动了网络服务器。

我也使用ini_set()进行这些设置并获得相同的结果。

很奇怪......这里有什么建议吗?

我正在使用此代码进行测试:

<?php 
//change this to your email. 
$to = "joe.guy@OURDOMAIN.com"; 
$from = "joe.guy@OURDOMAIN.com"; 
$subject = "Hello! This is HTML email"; 
$message = "hello";
$headers  = "From: $from\r\n"; 
$headers .= "Content-type: text/html\r\n"; 
mail($to, $subject, $message,$headers); 

echo "Message has been sent....!"; 
?>

以下是我的php.ini设置:

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = mail.OURDOMAIN.com
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = joe.guy@OURDOMAIN.com

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

1 个答案:

答案 0 :(得分:1)

尝试使用域名的IP地址而不是名称。这对我有好几次了。

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = 127.0.0.1  

ie:你自己的ip smtp服务器ip地址