Microsoft WebMatrix中的PHP Mail错误

时间:2011-07-20 10:55:38

标签: php sendmail

我是Web开发的新手,我目前正在学习PHP和MySQL。我已经阅读了HeadFirst PHP和MySQL,并尝试了这些示例。但是PHP Mail()函数在我的本地计算机上不起作用。我已经在Web服务器上尝试过该脚本,但没有任何反应,邮件也没有发送。请帮我。我已将PHP.INI文件配置为发送电子邮件,但问题仍然存在。

<?php
$to = "me@me.com";
$sub = "hello";
$msg = "Hello, how are you?";
//Mail Function
mail($to,$sub,$msg);
?>

我正在使用安装了PHP 5.2的WebMatrix。请帮助我,我从最近2个小时开始尝试这个!我被卡住了!

3 个答案:

答案 0 :(得分:4)

mail()使用'localhost'发送 - 它通常假设它在Linux上。

您需要获取基本的SMTP服务器并在Windows上运行它,或者您可以使用您的ISP的SMTP服务器。

无论哪种选择,您都需要编辑php.ini,您会发现:

[mail function]
; For Win32 only.
;SMTP =

您必须将SMTP设置为邮件服务器的IP /端口 - 再次在本地运行或使用您的ISP。

修改

您可以尝试这种方法 - 我个人从未尝试过使用GMail发送:http://www.linuxquestions.org/questions/programming-9/php-pear-mail-packege-support-security-through-ssl-586976/

答案 1 :(得分:3)

  

但PHP Mail()函数不起作用

是的。问题出在您配置PHP的方式或配置它使用的MTA上。您需要提供两者的详细信息,以便我们了解邮件未被发送的原因。

答案 2 :(得分:1)

上述答案也适用于使用模拟本地IIS的用户,例如位于具有SMTP计算机的公司网络中的IIS Express用户上的WebMatrix。 为了能够从其中发送电子邮件,需要编辑PHP.INI文件(通常在\ Program Files(x86)\ IIS Express \ PHP \ v5.3中找到)并将“localhost”替换为SMTP服务器IP或DNS名称。