【问题标题】:I can't send an email php to Hotmail?我不能向 Hotmail 发送电子邮件 php?
【发布时间】:2014-12-15 09:13:01
【问题描述】:

这是我的代码:

<?php

$to = 'test@hotmail.com';
$subject = 'reservation hotel n';
$msg ='ok';

// Make sure to escape quotes

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'From:  hôtel  <reservation@hotel.com' . "\r\n";

mail($to, $subject, $msg, $headers);

?>

它适用于 Gmail、Yahoo、GMX ...但不适用于 Hotmail/Live/MSN。

因为它适用于 Gmail,我可以假设它与我的服务器无关,对吧?

我也试过了: http://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard/Default.aspx

正在进行系统维护。请稍后再试。

寻求帮助

【问题讨论】:

  • Hotmail/Microsoft 在接受电子邮件时非常严格——他们非常注意设置的某些标头/它们的值、发件人和位置(服务器)“匹配”等。查看其他问题有类似的主题来尝试寻找解决方案,stackoverflow.com/search?q=php+mail+hotmail
  • 您需要进行大量的服务器配置才能使您的服务器可靠地发送电子邮件。现在大多数人都使用像亚马逊这样的第三方服务,因为他们已经完成了所有设置,并且您可以确保您的电子邮件不会被视为垃圾邮件。您的代码没有问题

标签: php sendmail hotmail


【解决方案1】:
Check it

<?php
   $to = "$email";
    $subject = "Welcome to";
    $message = " Hi $username,<br /><br />
    Thank you for signing up with us.<br />

    Thanks <br />";
    // Always set content-type when sending HTML email
    $headers = "MIME-Version: 1.0" . "\r\n";
    $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
    // More headers
    $headers .= 'From: <test@gmail.com>' . "\r\n";
    $mail=mail($to,$subject,$message,$headers);
?>

【讨论】:

    【解决方案2】:

    问题解决了,我改用 php mailer

    require_once "class.phpmailer.php"; 
    require_once "class.smtp.php"; 
    
    
    
    $mail->Host       = "smtp.gmail.com";  
    $mail->Port       =  587;  
    $mail->Username = "**@gmail.com";
    $mail->Password = "**";
    $mail->From       = "***";  
    
    $mail->FromName   = "Hôtel **";  
    $mail->IsHTML(true); // if you are going to send HTML formatted emails
    $mail->SingleTo = true; // if you want to send a same email to multiple users. multiple emails will be sent one-by-one.
    
    //Caractéristiques du message  
    $mail->CharSet     = 'utf-8';  
    $mail->ContentType = 'text/plain';  
    $mail->Encoding    = '8bit';  
    
    $mail->Subject    = "**";  
    $mail->Body       = "okkk";  
    $mail->WordWrap   = 0;  
    
    $mail->AddAddress("**@hotmail.com", "nom");  
    $mail->Send();
    

    【讨论】:

      【解决方案3】:

      我认为您需要其中之一才能使其工作: Sender ID Framework SPF Record Wizard

      它应该可以解决您的问题,因为 Hotmail 需要这样做以确保安全。

      【讨论】:

      • 正在进行系统维护。请稍后再试。
      • 我看到了。我想你只需要等待他们完成它。我觉得奇怪的是您的虚拟主机没有为您提供一个。
      猜你喜欢
      • 1970-01-01
      • 2016-02-22
      • 2010-12-19
      • 2011-02-24
      • 1970-01-01
      • 2014-05-30
      • 2014-07-20
      • 2012-02-04
      • 2014-06-11
      相关资源
      最近更新 更多