Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel:所有RCPT命令均被拒绝,错误为:不允许503中继,需要身份验证_Laravel_Email_Laravel 5 - Fatal编程技术网

Laravel:所有RCPT命令均被拒绝,错误为:不允许503中继,需要身份验证

Laravel:所有RCPT命令均被拒绝,错误为:不允许503中继,需要身份验证,laravel,email,laravel-5,Laravel,Email,Laravel 5,我已经与Laravel建立了一个网站,它使用电子邮件通知用户某些事情。为了在我的个人电脑上进行测试,我使用我的gmail帐户从te网站发送电子邮件,效果非常好。现在,我想为公众发布这个网站,并为最终版本使用它noreply@mydomain发送电子邮件而不是我的gmail地址 因此,我在.env文件中设置了环境变量,如下所示: MAIL_DRIVER=smtp MAIL_HOST=mail1.webyte.eu MAIL_PORT=587 MAIL_USERNAME=noreply@mydoma

我已经与Laravel建立了一个网站,它使用电子邮件通知用户某些事情。为了在我的个人电脑上进行测试,我使用我的gmail帐户从te网站发送电子邮件,效果非常好。现在,我想为公众发布这个网站,并为最终版本使用它noreply@mydomain发送电子邮件而不是我的gmail地址

因此,我在.env文件中设置了环境变量,如下所示:

MAIL_DRIVER=smtp
MAIL_HOST=mail1.webyte.eu
MAIL_PORT=587
MAIL_USERNAME=noreply@mydomain
MAIL_PASSWORD=mypassword
MAIL_ENCRYPTION=tls
我的主机服务人员告诉我这应该是正确的,但是,当我尝试这一点时,我得到以下错误:

Swift_TransportException 503预期响应代码354,但收到代码 503,消息为503,所有RCPT命令均被拒绝 错误:不允许503中继,需要身份验证503有效RCPT 命令必须在数据之前

我已经在互联网上搜索了几天了,找不到任何适合我的东西


有人知道我应该在这里做什么吗?谢谢

某些服务器具有详细信息设置。例如,对于namesheap上的服务器,我需要在.env文件中添加这些变量

邮寄地址=noreply@mydomain


MAIL\u FROM\u NAME=NoReply

某些服务器具有详细信息设置。例如,对于namesheap上的服务器,我需要在.env文件中添加这些变量

邮寄地址=noreply@mydomain


MAIL\u FROM\u NAME=NoReply

我通过改变:


MAIL\u DRIVER=sendmail

我通过更改以下内容找到了答案:


MAIL\u DRIVER=sendmail

我还通过在.env文件中包含以下内容来修复此错误:


我还通过在.env文件中包含以下内容来修复此错误:


此错误来自SMTP电子邮件服务提供商。Laravel使用SwiftMailer发送电子邮件。因此,您可以使用下面的方法捕获错误

try {
  Mail::send('emails.contact-message', [
   'msg' => $request->body,
   'name' => $request->name,
   'email' => $request->email,

  ],

     function ($mail) use($request) {
       $mail->from($request->email, $request->name);
       $mail->to('support@domain.com')->subject('Contact Message');
     }

   );
 // Catch the error
 } catch(\Swift_TransportException $e){
    if($e->getMessage()) {
       dd($e->getMessage());
    }             
 }

此错误来自SMTP电子邮件服务提供商。Laravel使用SwiftMailer发送电子邮件。因此,您可以使用下面的方法捕获错误

try {
  Mail::send('emails.contact-message', [
   'msg' => $request->body,
   'name' => $request->name,
   'email' => $request->email,

  ],

     function ($mail) use($request) {
       $mail->from($request->email, $request->name);
       $mail->to('support@domain.com')->subject('Contact Message');
     }

   );
 // Catch the error
 } catch(\Swift_TransportException $e){
    if($e->getMessage()) {
       dd($e->getMessage());
    }             
 }

谢谢你的回答,我不能验证它,但因为我已经使用了一个完全不同的方法来让网站工作。我希望这可能会帮助其他人,因为我真的有很大的麻烦与此…谢谢你的答案,我无法验证它,但因为我已经使用了一个完全不同的方法来让网站工作。我希望这可以帮助其他人,因为我真的有很大的麻烦。。。