本机的php邮件功能似乎无法与Gmail配合使用

4
我正在尝试使用原生的PHP函数通过Gmail SMTP发送简单的测试邮件,但是它没有起作用。我查看了各种论坛,包括Stack Overflow,唯一的解决方案都是推荐使用第三方电子邮件库/框架/API。这是否意味着PHP的mail()无法与Gmail配合使用,如果是这样,为什么呢?
以下是代码:
<?php
$to ="mail2@yahoo.com";
$sbj ="test mail";
$msg ="testing! testing!! testing!!!";

ini_set("SMTP", "ssl://smtp.gmail.com");
ini_set("smtp_port", 465);
ini_set("sendmail_from", "mail1@gmail.com");

$header ="From: " .ini_get("sendmail_from");

mail($to, $sbj, $msg, $header);

?>

我收到的错误信息:

警告:邮件发送失败,无法连接到 "ssl://smtp.gmail.com" 的邮件服务器,端口号为465。请检查php.ini中的 "SMTP" 和 "smtp_port" 设置,或在C:\wamp\www\test\web1\test1.php文件中使用ini_set()函数修改设置。详细信息请参考第12行。


有一个不需要第三方解决方案的答案,可以在https://dev59.com/7XRB5IYBdhLWcg3wH0SW找到。 - GDP
@GDP,我已经看过那个解决方案了。它确实推荐使用PEAR邮件包,但我正在寻找关于PHP本地mail()函数的答案,它是否可以与Gmail一起使用? - okey_on
请查看 http://stackoverflow.com/questions/10453926/phpmailer-and-100k-file-limit-for-attachments/10455296#10455296。 - user188654
啊,我可能从错误的标签页中复制了内容,抱歉。不过我找到了这个链接:http://www.vishalkumar.in/2009/06/php-mail-using-gmail-smtp-tutorial/。 - GDP
@holodoc,我也看过那个。PHPMailer不是PHP原生的。 - okey_on
抱歉,我确信在您的帖子中提到过 PHPMailer。不管怎样,像 PHPMailer 这样的邮件库仍然是处理 SMTP 认证等复杂事物的推荐方式。 - user188654
3个回答

1

对于您来说最好的课程是phpmailer。其中有适用于Gmail的良好示例(简单和高级)。


0
这是什么意思,PHP的mail()函数不能和Gmail一起使用,如果是这样,为什么呢?
Gmail服务器在发送任何邮件之前都要求用户进行身份验证,而mail()没有提供任何身份验证方法。

那么这就是一个明确的否定!PHP mail() 无法与 Gmail 配合使用? - okey_on
理论上来说,通过配置sendmail使用gmail作为中继主机应该是可能的,所以我并不是在说绝对不行。 - dev-null-dweller

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接