PHP邮件不会从Windows Server 2008发送

时间:2011-04-07 17:58:40

标签: windows-server-2008 php

我有两台服务器。 One(linux)将使用下面的脚本发送邮件。第二个(Windows Server 2008)什么都不发送。

<?php mail ( "nobody@email.com", "Contact Us Form", "This is an email from your site", "From: nobody@email.com" )
?>

2 个答案:

答案 0 :(得分:3)

mail()在linux和windows上的工作方式非常不同。

  • 在Linux上,它将您的邮件传输到sendmail二进制文件,后者执行所有工作
  • 在Windows上,它实际上需要充当MTA以将邮件传递给另一个应用程序。

在Windows上,您最好的选择是设置SMTP信息,以便PHP可以将邮件移交给另一台服务器,该服务器将负责最终交付。

http://ca2.php.net/manual/en/mail.configuration.php#ini.smtp

完成(并且您的网络服务器重新启动以允许更改生效)如果您仍然无法发送邮件,请检查PHP和指定MTA的日志,以查看故障发生的位置。

答案 1 :(得分:1)

检查你的PHP.ini你也可以在脚本级别使用ini_set函数覆盖它们(我认为)。

[mail function]
; For Win32 only.
SMTP = xxx.xxx.xxx.xxx
smtp_port = xx