尝试在 Laravel 5.1 中进行电子邮件验证

Trying to make Email verification in Laravel 5.1

我有一个错误

Swift_TransportException in StreamBuffer.php line 265: Connection could not be established with host mailtrap.io [ #0]

可能知道这是什么意思?很高兴你能帮助我。谢谢^^

您需要在 .env 文件中设置邮件提供商详细信息,或者您可以在 config/mail.php

中添加

.env

MAIL_DRIVER=mail
MAIL_HOST=smtp.mandrillapp.com
MAIL_PORT=587
MAIL_USERNAME=test@gmail.com
MAIL_PASSWORD=test pass
MAIL_FROM=test@gmail.com
MAIL_NAME=test
MAIL_ENCRYPTION=null

可以在两个地方看到邮件配置:

  1. .env 文件
  2. mail.php 文件位于 config 文件夹

您可以更新其中任何一个,但强烈建议编辑.env文件以避免触及默认配置。

打开 .env 文件。您将在底部看到 mail 配置,如下所示:

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

现在,登录您的 mailtrap.io 帐户。从 Integrations 下拉列表中,您需要 select Laravel 选项。当 selected 时,配置如下所示:

return array(
  "driver" => "smtp",
  "host" => "mailtrap.io",
  "port" => 2525,
  "from" => array(
      "address" => "from@example.com",
      "name" => "Example"
  ),
  "username" => "your_username",
  "password" => "your_password",
  "sendmail" => "/usr/sbin/sendmail -bs",
  "pretend" => false
);

现在打开 mail.php 文件:

往下看第 57 行,它应该有 'from' => ['address' => null, 'name' => null],。您需要将其替换为 mailtrap.io 配置中提供的内容。

所以更新后的 from 应该是 'from' => ['address' => 'from@example.com', 'name' => 'Example'],.

现在,在您的 .env 文件中,将 MAIL_USERNAMEMAIL_PASSWORD 分别更新为 your_usernameyour_password

因此,您在 .env 文件中的邮件配置应如下所示:

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=your_username
MAIL_PASSWORD=your_password
MAIL_ENCRYPTION=null

完成。您现在应该看到邮件正常运行,没有任何其他问题。希望这对你有所帮助。

干杯。