SMTP GMAIL 连接
SMTP GMAIL Connection
我无法使用 PHPMailer 连接到 SMTP GMAIL。
这是错误:
Error on Jun 25, 2015 22:54PM - stream_socket_client(): unable to
connect to smtp.gmail.com:587 (Connection timed out) in
/home/amiroper/public_html/beporsbedoon/app/helpers/phpmailer/smtp.php
on line 222
这是我的代码:
$this->_mail->isSMTP();
$this->_mail->Host = "smtp.gmail.com";
$this->_mail->SMTPAuth = true;
$this->_mail->Username = "amiroperator@gmail.com";
$this->_mail->Password = "*********";
$this->_mail->SMTPSecure = "tls";
$this->_mail->Port = "587";
$this->_mail->SMTPDebug = 4;
$this->_mail->From = "AmirOperator";
$this->_mail->FromName = 'amiroperator@gmail.com';
$this->_mail->addAddress("amiroperator@outlook.com", "test");
$this->_mail->isHTML(true);
$this->_mail->Subject = 'Registration confirm';
$this->_mail->Body = 'Thank you for registering to activate your account please click on this link. ".DIR."account/activate/$id/$activasion"';
$this->_mail->AltBody = 'Thank you for registering to activate your account please click on this link. ".DIR."account/activate/$id/$activasion"';
if(!$this->_mail->send()) {
$data['mailsent'] = false;
} else {
$data['mailsent'] = true;
}
php代码错误或这是连接问题
您的服务器无法连接到 smtp.gmail.com 端口 587。我在 a testing tool:
遇到了同样的问题
Resolving hostname...
Connecting...
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
Message sending failed.
在我的本地机器上,它运行完美:
Trying 74.125.195.108...
Connected to gmail-smtp-msa.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP be3sm8900765wib.21 - gsmtp
可能 Google 来自美国(我在德国)或类似情况的临时问题。您的代码中没有明显的错误。您只能稍后重试或使用其他 SMTP 服务器。
此外,您可以尝试直接连接 74.125.195.108(只需停用 SSL 证书验证)。
编辑:还可以尝试 tls://smtp.gmail.com
作为主持人。
调整代码中的身份验证协议和端口号:
// Your Current Settings
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Updated Settings
$mail->SMTPSecure = 'ssl';
$mail->Port = 465;
我发现当 PHPMailer 设置为使用具有 TLS 身份验证协议和端口号 587 的 Gmail SMTP 服务器时,它根本不起作用。但是,我在使用 SSL/465.
时从未遇到过问题
我无法使用 PHPMailer 连接到 SMTP GMAIL。
这是错误:
Error on Jun 25, 2015 22:54PM - stream_socket_client(): unable to connect to smtp.gmail.com:587 (Connection timed out) in /home/amiroper/public_html/beporsbedoon/app/helpers/phpmailer/smtp.php on line 222
这是我的代码:
$this->_mail->isSMTP();
$this->_mail->Host = "smtp.gmail.com";
$this->_mail->SMTPAuth = true;
$this->_mail->Username = "amiroperator@gmail.com";
$this->_mail->Password = "*********";
$this->_mail->SMTPSecure = "tls";
$this->_mail->Port = "587";
$this->_mail->SMTPDebug = 4;
$this->_mail->From = "AmirOperator";
$this->_mail->FromName = 'amiroperator@gmail.com';
$this->_mail->addAddress("amiroperator@outlook.com", "test");
$this->_mail->isHTML(true);
$this->_mail->Subject = 'Registration confirm';
$this->_mail->Body = 'Thank you for registering to activate your account please click on this link. ".DIR."account/activate/$id/$activasion"';
$this->_mail->AltBody = 'Thank you for registering to activate your account please click on this link. ".DIR."account/activate/$id/$activasion"';
if(!$this->_mail->send()) {
$data['mailsent'] = false;
} else {
$data['mailsent'] = true;
}
php代码错误或这是连接问题
您的服务器无法连接到 smtp.gmail.com 端口 587。我在 a testing tool:
遇到了同样的问题Resolving hostname...
Connecting...
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
Message sending failed.
在我的本地机器上,它运行完美:
Trying 74.125.195.108...
Connected to gmail-smtp-msa.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP be3sm8900765wib.21 - gsmtp
可能 Google 来自美国(我在德国)或类似情况的临时问题。您的代码中没有明显的错误。您只能稍后重试或使用其他 SMTP 服务器。
此外,您可以尝试直接连接 74.125.195.108(只需停用 SSL 证书验证)。
编辑:还可以尝试 tls://smtp.gmail.com
作为主持人。
调整代码中的身份验证协议和端口号:
// Your Current Settings
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Updated Settings
$mail->SMTPSecure = 'ssl';
$mail->Port = 465;
我发现当 PHPMailer 设置为使用具有 TLS 身份验证协议和端口号 587 的 Gmail SMTP 服务器时,它根本不起作用。但是,我在使用 SSL/465.
时从未遇到过问题