当我在登台服务器上更改env laravel中的设置时,为什么我的电子邮件发件人不会更新?

时间:2017-12-07 03:58:52

标签: laravel email smtp environment-variables laravel-5.3

我使用了laravel 5.3并且我在伪造(https://forge.laravel.com

上的登台服务器上更改了env

我这样改变:

#MAIL_HOST=smtp.gmail.com
#MAIL_PORT=587
#MAIL_USERNAME=mygmail@gmail.com
#MAIL_PASSWORD=secret
#MAIL_ENCRYPTION=tls

MAIL_HOST=mail.myshop.id
MAIL_PORT=587
MAIL_USERNAME=contact@myshop.id
MAIL_PASSWORD=secret
MAIL_ENCRYPTION=tls

如果我尝试在我的系统中发送邮件,则电子邮件发件人为mygmail@gmail.com

电子邮件发件人应该是contact@myshop.id

我该如何解决这个问题?

5 个答案:

答案 0 :(得分:1)

在Laravel 5.1 php artisan config:clear上,没有起作用。相反,我需要运行

  

php artisan config:cache

答案 1 :(得分:0)

我在两个可能的问题之间犹豫不决.. 第一种可能性:这可能是因为如果您使用它运行应用程序,您的工匠服务器会使用缓存。 因此,请尝试停止您的工匠服务器并重新启动它 第二个:电子邮件设置在其他位置。所以检查你的配置文件(在config /目录中)。

希望这会有所帮助

答案 2 :(得分:0)

您的ENV上的MAIL CONFIGURATION并不意味着您的发件人电子邮件将显示在收件人上,而该邮件只是用于电子邮件服务工作的凭据,如果您希望您可以使用邮件进行配置.php配置文件在config文件夹中或直接到laravel的Mail函数。

stream {
    server {
        listen            3333 proxy_protocol;
        proxy_pass        127.0.0.1:2222;
        proxy_protocol    on;
        set_real_ip_from  10.0.0.0/8;
    }
}

答案 3 :(得分:0)

我知道这是一个老问题,但是我处于同样的情况下,发现了一些对我有用的

  

php artisan config:clear

也许可以帮助其他人降落在这里。

答案 4 :(得分:0)

我使用带有主管的laravel 5.7来处理队列。以下步骤可以帮助我解决问题:

  

php artisan config:cache

此命令刷新高速缓存中的配置文件。您可以在bootstrap / cache / config.php中进行检查,并查找“邮件”数组。

  

php artisan队列:重新启动

告诉队列使用新配置并重新启动主管。

如果以上命令不能解决问题,则这些命令可能会有所帮助:

  

php artisan cache:clear

     

sudo administratorctl重新启动所有

     

sudo nginx -s重新加载

此外,您可以设置您的发件人地址。只需查看config / mail.php文件即可。

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=xxxxxxxxx
MAIL_PASSWORD=xxxxxxxxx
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@youremail.com
MAIL_FROM_NAME=yourname