我正在尝试使用Google的SMTP与PHPMailer一起发送邮件,但我无法让它发挥作用。这是我的代码:
$mail->IsSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Username = "myemail@gmail.com";
$mail->Password = "**********";
$mail->Port = "465";
首先,我并不完全明白应该填写什么作为'SMTPSecure',有些人说'ssl
',其他人说'tls
'。接下来的'Port',我可以输入'465'或'587'。但是这些组合都不起作用......请注意,我使用的是常规Gmail帐户,而不是Google Apps。在我的Gmail帐户中,我启用了“POP访问”。
我得到的错误是:“Must issue a STARTTLS command first
”。这意味着SSL失败了,但不知道为什么......
答案 0 :(得分:6)
好的,问题是PHPMailer的版本。 我更新到PHPMailer版本5,一切都很好。 我使用的是phpMailer版本1.02。
答案 1 :(得分:5)
通过CodeIgniter
使用GMail时,我遇到了类似的问题对我来说,更改主机选项有效:
$mail->Host = "ssl://smtp.googlemail.com";
答案 2 :(得分:3)
设置$ mail-> SMTPDebug = 1; 它将为您提供有关此错误的更多信息。 你很可能会得到 “无法找到套接字传输”ssl“ - 你在配置PHP时忘了启用它”。要解决此问题,请删除“;” from; extension = php.ini中的php_openssl.dll行。
PS 我也喜欢XAMPP:)))
答案 3 :(得分:1)
$ host =“ssl://smtp.gmail.com”; $ port =“465”
我从SSL更改为ssl。有用。
答案 4 :(得分:0)