Laravel-发送邮件无法工作,尝试在Windows上通过Laragon使用Sendmail时挂起 [英] Laravel - Sending mail not working, tinker hanging when trying to use sendmail via Laragon on Windows
本文介绍了Laravel-发送邮件无法工作,尝试在Windows上通过Laragon使用Sendmail时挂起的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
- 操作系统:Windows 10
- Laravel版本:8.75
- PHP版本:7.4.27
- 数据库驱动程序版本:SQLite
说明:
我试着让Sendmail(Laragon)工作,但没有运气。 文件".env"已调整为在新的Laravel项目上使用Sendmail而不是SMTP。
复制步骤:
- 已创建新的laravel项目
laravel new test
- 调整后的.env文件:
MAIL_MAILER=sendmail
MAIL_SENDMAIL_PATH='C:LARAGONinsendmailsendmail.exe -bs'
- 运行命令:
php artisan tinker
- 运行Tinker命令:
Mail::raw('Hello World!', function($msg) {$msg->to('mail@example.com')->subject('Test Email'); });
运行Tinker命令后,cmd挂起...
还尝试了Sendmail标志的不同选项:
- sendmail.exe-t-i<;<;<;修补程序挂起
- sendmail.exe-t<;<;<;Tinker挂起
- sendmail.exe-bs<;<;<;Tinker挂起
通过使用其他php内置的邮件功能,Laragon运行良好,还可以成功捕获邮件文件夹中的已发送邮件。
在每次更改.env文件后,我总是尝试清除配置缓存。php artisan config:clear
使用以下代码通过php发送邮件可以正常工作:
<html>
<head>
<title>Sending HTML email using PHP</title>
</head>
<body>
<?php
$to = "xyz@somedomain.com";
$subject = "This is subject";
$message = "<b>This is HTML message.</b>";
$message .= "<h1>This is headline.</h1>";
$header = "From:abc@somedomain.com
";
$header .= "Cc:afgh@somedomain.com
";
$header .= "MIME-Version: 1.0
";
$header .= "Content-type: text/html
";
$retval = mail ($to,$subject,$message,$header);
if( $retval == true ) {
echo "Message sent successfully...";
}else {
echo "Message could not be sent...";
}
?>
</body>
</html>
非常感谢您的帮助。
推荐答案
通常,当sendmail出现身份验证问题时会出现这种情况。
的建议使用您的Gmail凭据设置Sendmail 此外,默认情况下,Gmail会禁用安全性较低的应用程序。确保您的帐户在此处也启用了不太安全的应用程序(或者使用特定于应用程序的密码更好):https://myaccount.google.com/lesssecureapps这篇关于Laravel-发送邮件无法工作,尝试在Windows上通过Laragon使用Sendmail时挂起的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文