2015-07-13 16 views
8

Sto tentando di inviare un'e-mail nell'applicazione laravel. Ecco il mio .env di file:Laravel 5: Invio di e-mail

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=********** 
MAIL_ENCRYPTION=tls 

E qui è il metodo Mail::send:

Mail::send('email', ['name' => "EE"], function($m){ 
      $m->to('[email protected]', 'Malik')->subject('Subjet of the email'); 
     }); 

E qui è l'errore:

Swift_TransportException in AbstractSmtpTransport.php line 383: Expected response code 250 but got code "530", with message "530 5.7.0 Must issue a STARTTLS command first. s16sm7748968wib.16 - gsmtp" 

Qualsiasi aiuto?

+0

dove stai usando questo codice, locale o server? – Tarunn

+1

Se si intende il codice Mail :: send (---), allora lo sto usando in Controller. – Saani

+1

Voglio dire ... u r su localhost o server !? – Tarunn

risposta

13

Bene, ho capito. Infatti l'e-mail non è stata autenticata perché quell'e-mail richiedeva l'autenticazione di un telefono cellulare dopo il login. cambiando in un altro indirizzo email che richiedeva solo le credenziali di accesso, ha funzionato.

.env 
MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=yourpassword 
MAIL_ENCRYPTION=tls 
2

GMail SMTP richiede la crittografia. Prova a cambiare le impostazioni come segue.

MAIL_PORT=465 
MAIL_ENCRYPTION=ssl 
+0

provato senza alcun beneficio, dando l'errore: Swift_TransportException in AbstractSmtpTransport.php riga 383: Codice di risposta previsto 250 ma ottenuto il codice "530", con messaggio "530 5.7.0 È necessario prima emettere un comando STARTTLS. W8sm20719292wja.15 - gsmtp " – Saani

+0

quali sono le impostazioni del driver ''driver' => env ('MAIL_DRIVER', 'smtp')' nella configurazione della posta ?? – Tarunn

+0

Queste sono le impostazioni del driver: ''driver' => env ('MAIL_DRIVER', 'smtp')' – Saani

1

ho fatto la seguente errore: non ho in realtà comprendono il

'encryption' => env('MAIL_ENCRYPTION'), 

al ritorno matrice in mail.php. Ho incluso il mio host, la porta, il nome utente e la password nel mail.php ma non il metodo di crittografia (il metodo di crittografia che ho incluso solo nel file .env), quindi provare queste soluzioni ha comportato un cambiamento nel risultato dei messaggi di errore , ha creato una grande confusione, ma nessuno ha risolto il problema. Spero che questo aiuti qualcuno!

0

Se le osservazioni di cui sopra non funzionano, prova a svuotare la cache:

php artisan cache:clear 
php artisan config:clear 
+1

È un suggerimento o una risposta? –