2017-06-24 61 views
0

我收到以下錯誤,當我在laravel 5.4問題與Laravel 5.4重置密碼功能

預期的響應碼250重置密碼,但得到的代碼「530」,與消息「530-5.5.1需要進行身份驗證。瞭解更在 530 5.5.1 https://support.google.com/mail/?p=WantAuthError s7sm7398940pgb.53 - gsmtp 「

我已輸入正確的用戶名和密碼藏漢在我的ENV TLS和smtp.gmail.com。 file.My mail.php文件也具有正確的憑據。 至於Gmail的一面:我的安全設置已設置爲允許通過更改我的安全設置來工作:打開訪問安全性較低的應用程序。

而我的本地服務器xampp已經在過去2年中所有內容管理系統之間來回發送電子郵件。我首次使用laravel 5.4。

我的繼承人.ENV文件

APP_NAME=MyApp 
APP_ENV=local 
APP_KEY=base64:---------= 
APP_DEBUG=true 
APP_LOG_LEVEL=debug 
APP_URL=http://localhost 

DB_CONNECTION=mysql 
DB_HOST=localhost 
DB_PORT=3306 
DB_DATABASE=mydb 
DB_USERNAME=root 
DB_PASSWORD=mypwd 

BROADCAST_DRIVER=log 
CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

REDIS_HOST=127.0.0.1 
REDIS_PASSWORD=null 
REDIS_PORT=6379 

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

PUSHER_APP_ID= 
PUSHER_APP_KEY= 
PUSHER_APP_SECRET= 

PAYPAL_MODE= 
PAYPAL_SANDBOX_CLIENT_ID= 
PAYPAL_SANDBOX_SECRET= 
PAYPAL_LIVE_CLIENT_ID= 
PAYPAL_LIVE_SECRET= 

而且我的繼承人mail.php

<?php 
return [ 
    'driver' => env('MAIL_DRIVER', 'smtp'), 
    'host' => env('MAIL_HOST', 'smtp.gmail.com'), 
    'port' => env('MAIL_PORT', '587'), 

    'from' => [ 
     'address' => env('MAIL_FROM_ADDRESS', '[email protected]'), 
     'name' => env('MAIL_FROM_NAME', 'myname'), 
    ], 

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

    /* 
    |-------------------------------------------------------------------------- 
    | SMTP Server Username 
    |-------------------------------------------------------------------------- 
    | 
    | If your SMTP server requires a username for authentication, you should 
    | set it here. This will get used to authenticate with your server on 
    | connection. You may also set the "password" value below this one. 
    | 
    */ 

    'username' => env('[email protected]'), 

    'password' => env('myemailpwd'), 

    'sendmail' => '/usr/sbin/sendmail -bs', 

    'markdown' => [ 
     'theme' => 'default', 

     'paths' => [ 
      resource_path('views/vendor/mail'), 
     ], 
    ], 

]; 
+0

你用'php artisan serve'運行laravel嗎?如果是這樣,在更改.env後,重新啓動服務器。 – Robert

+0

已經做到了這一點...我也清除緩存之前artisan服務:(PHP手藝緩存:清除和PHP工匠配置:緩存),但仍然得到錯誤。 – RileyManda

+0

也許增加你的.env配置(沒有用戶名和密碼)?基本上,電子郵件工作,你只需要更改.env,沒有別的。 (在gmail的情況下,你必須允許這樣做,但你已經這麼做了。) – Robert

回答

1

變化這在config/mail.php

'username' => env('MAIL_USERNAME', 'fallback email'), 

'password' => env('MAIL_PASSWORD', 'fallback password'), 

的第一個參數用於密鑰它是在你的.env中定義的,第二個是默認值,以防env('KEY')返回null。

現在的問題是,它在您的.env文件中搜索密鑰'[email protected]',該文件不存在,密鑰名稱爲'MAIL_USERNAME'

+0

感謝bro.I編輯了config/mail.php,但我仍然收到密碼重置錯誤響應:: Swift_TransportException在AbstractSmtpTransport.php行383 :預期響應代碼250,但獲得代碼「530」,並帶有消息「530-5.5.1需要身份驗證。請參閱 530 5.5.1 https://support.google.com/mail/?p=WantAuthError 75sm21180112pfk.113 - gsmtp 「 – RileyManda

+0

通過鍵入:'php artisan tinker'並鍵入:'config('mail');'打開修補程序。這些值是否正確? – Robert

+0

是的值是正確的 – RileyManda