如何在laravel 5.4中配置邮件服务,而电子邮件客户端是webmail

时间:2017-07-12 01:15:28

标签: laravel-5.4 plesk

我有从SMTP驱动程序发送邮件的背景。但目前我正在开发一个邮件客户端使用webmail.DomainName.com的项目(邮件主机以 webmail 开头),网站托管在Plesk Automation(Web主机自动化系统,如Cpanel)上。我无法从我自己的界面发送电子邮件到其他电子邮件。实际上这是我的域邮件服务器拒绝发送邮件。我已经创建了一个我在.env文件中使用的邮件帐户。但我不知道如何解决它以及我在我的代码中做错了。

这是我的邮件控制器中的邮件配置功能代码

  public function mailSender(Request $request)
{
    $data = new EmailVarification();
    $data->email = $request['email'];
    $data->token = str_random(40);
    $data->save();
    $dataVar['token'] = $data->token;
    $dataVar['from'] = "MyEmail@MyDomain.com";
    $dataVar['email'] = "someOneEmail@SomeOneDomain.com";
    Mail::send('pages.registration.emailcon', $dataVar, function ($message) use ($dataVar) {
        $message->from($dataVar['from']);
        $message->to($dataVar['email']);
        $message->subject('Account Activation ');
    });
    return "saved";
}

用于快速配置我正在使用.nev文件进行邮件,而我在.env邮件部分的配置是:

BROADCAST_DRIVER=log
MAIL_DRIVER=SMTP
MAIL_HOST=webmail.MyDomain.com
MAIL_PORT=587
MAIL_USERNAME=MyEmail@MyDomain.com
MAIL_PASSWORD=MyEmailPassword
MAIL_ENCRYPTION=

当我发送电子邮件时,它会让我得到这个错误#screenshot enter image description here 正如我自己评估的那样,问题是部分MAIL_DRIVER = SMTP .env中webmail.MyDomain.com不允许或其他我不知道的地方。

enter image description here

1 个答案:

答案 0 :(得分:0)

也许您应该开始配置重置密码。它更容易,你只需要执行laravel给我们的命令。在laravel 5.2(我正在使用)中,您需要执行此命令来创建视图以重置被遗忘的密码。

php artisan make:auth

此命令用于执行创建用户表和密码重置的迁移。

php artisan migrate

在您重置视图后,您可以访问它们;您需要使用您的域创建一个新电子邮件。我正在使用“Hosting-México”(Hosting-México给我一个cpanel来管理我的域名),在我的情况下,当你创建一个新的(来自cpanel),仅用于从后端发送电子邮件时,cpanel给我具体的信息配置邮件帐户。您需要将此信息放在.env文件中。 Creating mail account

我的域名也使用像邮件客户端这样的网络邮件。但是cpanel给我的信息与webmail不同。

这是cpanel给我的信息。

  • 用户名:hello@mydomain.com
  • 密码:您为帐户配置的密码
  • 接收服务器:visshnu.hosting-mexico.net,IMAP端口:### POP3端口:###
  • 邮件服务器:visshnu.hosting-mexico.net SMTP端口:###

    这是我的.env文件:

    MAIL_DRIVER = SMTP

    MAIL_HOST = vishnu.hosting-mexico.net

    MAIL_PORT = ###

    MAIL_USERNAME=hello@mydomain.com

    MAIL_PASSWORD = ###########

    MAIL_ENCRYPTION = SSL

如何看到cpanel给我的具体信息,它与webmail不同,尽管邮件服务器确实使用了webmail。

也许主机作为中间人,设置laravel所需的数据必须由你的capnel提供。

我希望它可以帮到你