我有从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 正如我自己评估的那样,问题是部分MAIL_DRIVER = SMTP .env中webmail.MyDomain.com不允许或其他我不知道的地方。
答案 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给我的信息。
邮件服务器: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提供。
我希望它可以帮到你