Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHPMailer SMTP configuration

For the past 2 hours I've been looking online to see if any other people encountered this problem, and it seems a lot has, bot none of the answers are working for me.

SMTP -> FROM SERVER:220 mx.google.com ESMTP vq7sm928004oeb.13 
SMTP -> FROM SERVER: 250-mx.google.com at your service, [50.57.114.141] 250-SIZE 35882577 250-8BITMIME 250-STARTTLS 250 ENHANCEDSTATUSCODES 
SMTP -> FROM SERVER:220 2.0.0 Ready to start TLS 
SMTP -> FROM SERVER: 250-mx.google.com at your service, [50.57.114.141] 250-SIZE 35882577 250-8BITMIME 250-AUTH LOGIN PLAIN XOAUTH XOAUTH2 250 ENHANCEDSTATUSCODES 
SMTP -> FROM SERVER:530-5.5.1 Authentication Required. Learn more at 530 5.5.1 http://support.google.com/mail/bin/answer.py?answer=14257 vq7sm928004oeb.13 
SMTP -> ERROR: MAIL not accepted from server: 530-5.5.1 Authentication Required. Learn more at 530 5.5.1 http://support.google.com/mail/bin/answer.py?answer=14257 vq7sm928004oeb.13 
The following From address failed: [email protected]

$mail->IsSMTP();
$mail->SMTPDebug = 2;
$mail->SMPTAuth = true;
$mail->SMTPSecure = 'tls';
$mail->Host = "smtp.gmail.com";
$mail->Mailer = "smtp";
$mail->Port = 587;
$mail->Username = "[email protected]";
$mail->Password = "password";

I've tried almost every setting for PHPMailer, but can't figure out what's still going wrong, are there any server settings I need to take care of?

I also tried the normal php mail() function, but that's not sending mail either, although when using Drupal forms it just sends an email.

like image 744
woutr_be Avatar asked Dec 04 '22 13:12

woutr_be


2 Answers

For first you must configure the correct server to send emails (see at gmail.com):

SMTP server address: smtp.gmail.com
SMTP user name: Your full Gmail address (e.g. [email protected])
SMTP password: Your Gmail password
SMTP port: 465 or 587
SMTP TLS/SSL required: yes

In PHPMailer:

$mail->SMTPAuth = true; // There was a syntax error here (SMPTAuth)
$mail->SMTPSecure = 'tls';
$mail->Host = "smtp.gmail.com";
$mail->Mailer = "smtp";
$mail->Port = 465;
$mail->Username = "[email protected]";
$mail->Password = "YOUR_GMAIL_password";
like image 180
kingmo Avatar answered Dec 19 '22 13:12

kingmo


My problem was that I use the 2-step verification. So I had to remember to go to Authorised Access for my Google Account & then assign a Application-specific passwords for the domain that I'm using to send the mail.

like image 25
Mike Gifford Avatar answered Dec 19 '22 13:12

Mike Gifford