Laravel 使用 Yahoo SMTP 发送邮件:Swift_TransportException 预期响应代码 250
Laravel Send Mail with Yahoo SMTP: Swift_TransportException Expected response code 250
我想用 Yahoo SMTP 服务发送邮件,但是 return Laravel 5.5 中的错误:
Expected response code 250 but got code "550", with message "550 Request failed; Mailbox unavailable "
之前我用Gmail SMTP服务测试过发送邮件,一切正常,但是关于Yahoo我有问题。我的 .env
配置是:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mail.yahoo.com
MAIL_PORT=587
MAIL_USERNAME=example@yahoo.com
MAIL_PASSWORD=*****
MAIL_ENCRYPTION=tls
我用这个代码发送邮件:
public function sendMail(){
$data = []; // Empty array
Mail::send('welcome', $data, function($message)
{
$message->to('john.doe@outlook.com', 'John Doe')->subject('Welcome!');
});
return 'ok';
}
即使我从 Yahoo 邮件配置中激活 SMTP:
我该怎么办?
在几个不同的系统中出现了同样的错误。将邮件 "from" 地址设置为 XXXX@yahoo.com(就像在您的配置中一样)解决了错误。
MAIL_FROM_ADDRESS 为必填项,值刚好等于 MAIL_USERNAME.
你的.env应该是这样的:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mail.yahoo.com
MAIL_PORT=587
MAIL_FROM_ADDRESS=example@yahoo.com
MAIL_USERNAME=example@yahoo.com
MAIL_PASSWORD=*****
MAIL_ENCRYPTION=tls
这解决了问题。
如果您的 .env
文件没有错误并且您确信这一点,您需要清除配置缓存:
php artisan config:cache
我想用 Yahoo SMTP 服务发送邮件,但是 return Laravel 5.5 中的错误:
Expected response code 250 but got code "550", with message "550 Request failed; Mailbox unavailable "
之前我用Gmail SMTP服务测试过发送邮件,一切正常,但是关于Yahoo我有问题。我的 .env
配置是:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mail.yahoo.com
MAIL_PORT=587
MAIL_USERNAME=example@yahoo.com
MAIL_PASSWORD=*****
MAIL_ENCRYPTION=tls
我用这个代码发送邮件:
public function sendMail(){
$data = []; // Empty array
Mail::send('welcome', $data, function($message)
{
$message->to('john.doe@outlook.com', 'John Doe')->subject('Welcome!');
});
return 'ok';
}
即使我从 Yahoo 邮件配置中激活 SMTP:
我该怎么办?
在几个不同的系统中出现了同样的错误。将邮件 "from" 地址设置为 XXXX@yahoo.com(就像在您的配置中一样)解决了错误。
MAIL_FROM_ADDRESS 为必填项,值刚好等于 MAIL_USERNAME.
你的.env应该是这样的:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mail.yahoo.com
MAIL_PORT=587
MAIL_FROM_ADDRESS=example@yahoo.com
MAIL_USERNAME=example@yahoo.com
MAIL_PASSWORD=*****
MAIL_ENCRYPTION=tls
这解决了问题。
如果您的 .env
文件没有错误并且您确信这一点,您需要清除配置缓存:
php artisan config:cache