【问题标题】:PHP emailing failing on WIMPWIMP上的PHP电子邮件发送失败
【发布时间】:2011-06-17 14:05:41
【问题描述】:

我有一个带有联系表单的 WordPress 站点,该表单在我的 MAMP 环境中运行良好,但是当我发布到我的客户 WIMP 服务器时出现故障。

  • 我对 WIMP 环境一点也不熟悉 - 如何检查 PHP 错误日志
  • 顺便问一下,WIMP 上的 PHP 电子邮件是否存在会导致此问题的问题?

代码:

<?php 

if ($_POST["contact_name"]<>'') { 
    $ToEmail = 'me@domain.com'; 
    $EmailSubject = 'New contact message';  
    $mailheader = "From: ".$_POST["contact_email"]."\r\n";  
    $mailheader .= "Reply-To: ".$_POST["contact_email"]."\r\n"; 
    $mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";  
    $MESSAGE_BODY = "<b>Name:</b> ".$_POST["contact_name"]."<br>";  
    $MESSAGE_BODY .= "<b>Email:</b> ".$_POST["contact_email"]."<br>";
    mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader) or die ("Failure"); 

?> 
<h4>Your message was sent. We will be in touch with you shortly.</h4>
<?php 
} else { 
<form id="contact-form" name="contact" method="post" action="#">
<label for="contact-name">Name *</label>
<input type="text" id="contact-name" name="contact_name" tabindex="1" class="required"/>
<label for="contact-email">Email</label>
<input type="text" id="contact-email" name="contact_email" tabindex="2" class="email" />
<input type="submit" id="contact-submit" name="contact_submit" value="" tabindex="8" />
</form>
<?php 
}; 
?>

【问题讨论】:

  • 您知道,您至少是我发现的第三个遇到 IIS 和邮件问题的人。

标签: php iis-7 email wimp


【解决方案1】:

Windows 没有像 unix 类型的操作系统那样的内置电子邮件服务器。您需要配置 php.ini 以添加用于中继电子邮件的 SMTP 服务器信息。

【讨论】:

  • 是的。根据我的经验,您需要在 Windows 的 PHP.INI 中配置 SMTPsmtp_port 和可能的 sendmail_from。据我记得,这里我们将它指向为 SMTP 配置的 Exchange 服务器。
【解决方案2】:

PHP manual page for the `mail()' 函数详细说明了 Windows 特定的一些要点。但是,可能会影响您的要点在本节中:(引用)

mail() 的 Windows 实现在许多方面与 Unix 实现不同。首先,它不使用本地二进制文件来编写消息,而仅在直接套接字上运行,这意味着需要 MTA 侦听网络套接字(可以在 localhost 或远程计算机上)。

其次,自定义标头,如 From:、Cc:、Bcc: 和 Date: 首先不是由 MTA 解释,而是由 PHP 解析。

因此,to 参数不应是"Something &lt;someone@example.com&gt;" 形式的地址。与 MTA 交谈时,mail 命令可能无法正确解析此内容。

还有其他一些事情需要考虑;请阅读手册页了解更多信息。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-08
    • 1970-01-01
    • 2013-08-26
    • 1970-01-01
    • 2017-02-09
    • 2016-07-26
    • 1970-01-01
    相关资源
    最近更新 更多