网上有一百万条关于这个错误的帖子:无法连接到"mail.OURDOMAIN.com"端口25的邮件服务器,请验证php.ini中的"SMTP"one_answers"SMTP_port"设置或使用ini_set()
以下是事实:
在我们的网站被迫加入公司的大型SMTP服务器池之前,我们的配置运行良好(使用由另一个组管理的SMTP服务器)。一旦我们将SMTP服务器条目指向新的SMTP服务器,就会出现"连接失败"问题。
我可以telnet到邮件。OURDOMAIN.com 25,并成功地手动发送了一封测试邮件——它应该可以工作。
我在php.ini中有正确的设置,并且我已经重新启动了Web服务器。
我也对这些设置使用了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: $fromrn";
$headers .= "Content-type: text/htmlrn";
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:xamppsendmailsendmail.exe" -t"
尝试使用域的ip地址而不是名称。这对我来说已经奏效很多次了。
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = 127.0.0.1
ie:您自己的ip smtp服务器ip地址