search

Home  >  Q&A  >  body text

php的mail函数发送邮件sina和163收不到的问题

发现 163/sohu/sina不能够收到PHP MAIL函数发出邮件,google找到了

解决163/sohu/sina不能够收到PHP MAIL函数发出邮件的问题
php的官网里mail的说明,看 Example #3

修改代码后
向我的qq发邮件,from是我的公司邮箱


$date = date("Y-m-d H:i:s");
$to = '1241143320@qq.com';

$from = "sunwenzheng@anheng.com.cn";

$headers  = 'MIME-Version: 1.0' . "\r\n";

$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

$headers .= "From: $from" . "\r\n";

$a = mail( $to  , ' title '.$date , ' content' . $date , $headers , "-f{$from}");
var_dump($a);                                                                                  

我发现如果把$to换成新浪和163的邮箱还是不行,
求助怎么办呢?

PHP中文网PHP中文网2818 days ago634

reply all(1)I'll reply

  • 阿神

    阿神2017-04-10 16:16:58

    php的 mail 函数是直接发邮件的。一般主流公司的邮件是有白名单规则的。。例如 @qq.com 的邮件,一定是由腾讯服务器发出的,而且带签名密钥,否则直接抛弃。所以这个函数只能对自己公司搭建的安全限制没那么严格的服务器有效的~
    如果有发送需求,可以使用PHPMailer这个包~然后使用真实邮箱通过SMTP发送就可以了。不过也要留意,每家公司每天发的数量有限的,例如你用QQ发大约200封的时候就会发现。发不出去了。当然这个数量是动态的。

    reply
    0
  • Cancelreply