2017-02-24 12 views
1

を "最初のAUTHコマンドを送信" 私は、SMTPを使用してローカルホストからメールを送信しようとすると、次のエラーを取得しています:Laravel 5.4 SMTPエラー

Expected response code 250 but got code "503", with message "503 5.5.4 Error: send AUTH command first. "

.env

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.yandex.com 
MAIL_PORT=465 
[email protected] 
MAIL_PASSWORD=11111111 
MAIL_ENCRYPTION=ssl 
[email protected] 
MAIL_NAME=MY.NAME 

設定を/ mail.php

<?php 
    return [ 
     'driver' => env('MAIL_DRIVER', 'smtp'), 
     'host' => env('MAIL_HOST', 'smtp.yandex.com'), 
     'port' => env('MAIL_PORT', 465), 
     'from' => [ 
      'address' => '[email protected]', 
      'name' => 'MY.NAME', 
     ], 
     'encryption' => env('MAIL_ENCRYPTION', 'ssl'), 
     'username' => env('[email protected]'), 
     'password' => env('11111111'), 
     'sendmail' => '/usr/sbin/sendmail -bs', 
    ]; 

試着:chすべての可能な組み合わせでサーバーを再起動します。 :) メーラーライブラリに渡す必要があるもう1つのパラメータがあります。いくつかのような

auth_mode=login_first 

これはlaravelの設定で行うことができますか?

+0

あなたは 'MAIL_ENCRYPTION = null'に変更することができます。しかし、私は '予想されたレスポンスコード250を取得しましたが、コード" "を持っていました。" また、開発のために[nice and free mail catcher](https://mailtrap.io/)の使用を検討してください。そして設定キャッシュ 'php artisan config:cache'をクリアすることを忘れないでください。 –

+0

私は暗号化を全く設定しようとしませんでしたが、助けにはなりませんでした。また、私はこの特定のsmtpサーバーがSSLを必要とすると思います。ここ数時間、私は、郵便配達員、マンドリル、スパークポストを試して、もっと多くのエラーを出していました。これはそれほど困難ではないはずですね。 :) – sr9yar

答えて

1

私は働く設定を投稿しています。設定ファイルでlaravel envヘルパー機能がどのように使用されているかを確認する必要があります。また、smtp.yandex.com auth emailとform emailを使用する場合は一致する必要があります。

Laravel Docs for env()

The env function gets the value of an environment variable or returns a default value:

$env = env('APP_ENV');

// Return a default value if the variable doesn't exist...

$env = env('APP_ENV', 'production');

.env

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.yandex.com 
MAIL_PORT=465 
[email protected] 
MAIL_PASSWORD=123123123 
MAIL_ENCRYPTION=ssl 
[email protected] 
MAIL_NAME=MY.NAME 

設定/ mail.php

<?php 
return [ 
    'driver' => env('MAIL_DRIVER', 'smtp'), 
    'host' => env('MAIL_HOST', 'smtp.yandex.com'), 
    'port' => env('MAIL_PORT', 465), 
    'from' => [ 
     'address' => env('MAIL_FROM','[email protected]'), 
     'name' => env('MAIL_NAME','MY.NAME'), 
    ], 
    'encryption' => env('MAIL_ENCRYPTION', 'ssl'), 
    'username' => env('MAIL_USERNAME','[email protected]'), 
    'password' => env('MAIL_PASSWORD','123123123'), 
    'sendmail' => '/usr/sbin/sendmail -bs', 
    'pretend' => false, 
]; 

Controller機能

public function testmail() 
{ 
    $user = Auth::user(); 
    $pathToLogo = config('app.url').'/images/logo/logo_250.png'; 
    Mail::send('emails.testmail', array('user' => $user, 'pathToLogo' => $pathToLogo), function($message) use ($user) 
     { 
      $message->to($user->email); 
      $message->subject('Test message'); 
     }); 
    return redirect()->route('home')->with('message','Test message sent.'); 
}