Настройка Gmail для отправки почты laravel 5

Я настроил это для отправки почты с помощью laravel 5 из моей учетной записи gmail.

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=********@gmail.com //email address
MAIL_PASSWORD="*******" //password for that email
MAIL_ENCRYPTION=tls

Чтобы проверить отправку почты, я использовал этот

Route::get('/email', function(){
$data = array(
    'name' => "Library",
    );
Mail::send('mailview',$data,function($message){
    $message->from('*******@gmail.com','Library');
    $message->to('*******@gmail.com')->subject('Confirmation mail.');
});

return "A email has been sent to you. Check inbox. Also check spambox if not in inbox.";});

Но это дает мне следующую ошибку.

Swift_TransportException в строке 383 AbstractSmtpTransport.php: ожидаемый код ответа 250, но получен код «530» с сообщением «530 5.7.0 Сначала необходимо выполнить команду STARTTLS. g20sm4065212pfd.55 — gsmtp»

Я искал это и нашел несколько вопросов по SO, связанных с этим. И до сих пор понимал, что здесь виноваты настройки безопасности gmail. Но не нашел ответа, в котором описывалось бы, что делать, чтобы решить эту проблему. Теперь я хочу знать, как мне настроить свою учетную запись gmail? [Предположим, я только что создал новую учетную запись gmail. Работаю в Linux Mint — если эта информация вам как-то поможет.]


person Shafi    schedule 17.12.2015    source источник
comment
попробуйте установить шифрование => '' или изменить порт и шифрование: 'порт' => 465, 'шифрование' => 'ssl'   -  person Ram    schedule 17.12.2015
comment
Те же настройки для нового проекта сработали успешно. В чем разница использования порта 465 вместо 587?   -  person Shafi    schedule 17.12.2015


Ответы (3)


Не уверен, что произошло.

port 587 должно работать.

Вы попробуете создать новый проект и настроить параметры так, как вы написали здесь?

Я думаю, что здесь все в порядке. Могут быть другие проблемы с настройками вашего проекта.

Однажды я столкнулся с чем-то подобным, и создание нового проекта у меня сработало.

person Community    schedule 19.12.2015

Разница между портами 465 и 587:

Порт 465 предназначен для smtps — шифрование SSL запускается автоматически перед любой связью на уровне SMTP.

Порт 587 предназначен для msa — это почти как стандартный порт SMTP. Шифрование SSL может быть запущено командой STARTTLS на уровне SMTP, если сервер поддерживает его и ваш интернет-провайдер не фильтрует ответ EHLO сервера (сообщено в ноябре 2014 г.).

(источник)

поэтому, если вы хотите использовать номер порта 587, вы должны установить шифрование пустым в настройках, но для 465 установка «ssl» в качестве шифрования решит проблему:

'host' => 'smtp.gmail.com',
'port' => 465, 
'encryption' => 'ssl',

OR

'host' => 'smtp.gmail.com',
'port' => 587, 
'encryption' => '',
person Ram    schedule 17.12.2015

Возможно, вам нужно включить менее безопасный доступ к приложениям в вашей учетной записи gmail.

person infernaze    schedule 17.12.2015