簡體   English   中英

.env和mail.php文件不會更新-Laravel 5.1

[英].env and mail.php files won't update - Laravel 5.1

我幾個月前開始了一個項目,並設置了配置以發送郵件,一切正常。 但是現在我想更改發件人的電子郵件地址,因此我更改了.env和mail.php文件中的配置,但是laravel只是忽略了更新(仍使用舊配置發送郵件)。 我清除了緩存並重新啟動了所有內容,甚至刪除了這些文件,並且laravel繼續使用已刪除的文件配置發送電子郵件。 我能做什么?

.env:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=someaddress@gmail.com
MAIL_PASSWORD=******
MAIL_ENCRYPTION=null

config / mail.php:

return [

    'driver' => 'smtp',
    'host' => 'smtp.gmail.com',
    'port' => 587,
    'from' => ['address' => 'someaddress@gmail.com', 'name' => 'Some Name'],
    'encryption' => 'tls',
    'username' => 'someaddress@gmail.com',
    'password' => '******',
    'sendmail' => '/usr/sbin/sendmail -bs',
    'pretend' => false,

];

控制器:

Mail::send('emails.devolucion', ['datos' => $diet], function ($message) use ($diet){
        $message->to($diet['correo'], $diet['nombre'])->subject('Devolución');
});

我曾經有另一個地址,而不是“ someaddress@gmail.com”,而laravel一直使用那個舊的電子郵件地址而不是新的電子郵件地址。 它忽略了文件更新。

聽起來您的配置文件正在緩存中,然后Laravel從緩存中讀取它們,這就是為什么未反映您的更新的原因。

我們可以告訴Laravel使用以下命令清除緩存並重新開始:

php artisan config:clear

Laravel Mail

注釋掉郵件功能內部的發件人地址(如果有的話),那么配置中的值將被自動獲取

Mail::send('emails.newuser', $mailData,
  function( $message) {
  //$message->from('feedback@example.com', 'No Reply');
  $message->to('user@example.com');
  $message->subject('Mail Subject');
});

希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM