php - 无法启动进程 [系统找不到指定的路径。] 在使用 Laravel 的邮件功能时
问题描述
在为 Laravel 使用 smtp 或 mailgun MAIL_DRIVER 时出现错误:无法启动进程 [系统找不到指定的路径。] 到目前为止,我无法弄清楚这个问题。
我试图确保所有配置等都是正确的,并在不同的 laravel 安装上对其进行了测试,并且在该安装上也遇到了同样的问题。
我测试的 smtp 的 .env 配置:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME={removed for security}
MAIL_PASSWORD={removed for security}
MAIL_FROM_ADDRESS=from@example.com
MAIL_FROM_NAME=Example
我测试过的 mailgun 的 .env 配置:
MAIL_DRIVER=mailgun
MAILGUN_DOMAIN={removed for security}
MAILGUN_SECRET={removed for security}
MAILGUN_ENDPOINT={removed for security}
MAIL_FROM_ADDRESS=from@example.com
MAIL_FROM_NAME=Example
我的代码用于通过路由发送邮件:
use Illuminate\Support\Facades\Mail;
Route::get('/',function(){
$data = [
'title' => 'Hi Example, How are You?',
'content' => 'Testing out the mail system'
];
Mail::send('emails.test',$data, function($message){
$message->to('example@gmail.com','Example')->subject('Hello Example, Whats Up');
});
});
我的邮件查看文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h1>{{$title}}</h1>
<p>{{$content}}</p>
</body>
</html>
预期的结果是它应该在 smtp 或 mailgun 的情况下发送消息,但是它抛出了一个错误:
Swift_TransportException
Process could not be started [The system cannot find the path specified. ]
解决方案
请注意,当您对文件进行更改时,请.env
确保重新启动您的 laravel 应用程序,方法是停止该过程并使用以下命令重新启动它:
按ctrl C
停止和
php artisan serve
开始
推荐阅读
- r - 带有 fontawesome 图标的闪亮下拉输入 (selectizeInput)
- php - 如果使用 json_encode,是否需要转义用户输入?
- javascript - 如何为 jQuery 的日期选择器创建状态管理/值/对象
- go - 构建 gccgo go1 时出错:错误:'-fsplit-stack' 当前仅在 GNU/Linux 上支持
- django - celery 任务的查询优化和分析
- android - 无法在颤振中播放视频
- python - Python中的链表节点
- javascript - 为什么更改网格大小后按钮功能不起作用?
- python - 将数据框映射到字典并从其他单元格中查找值?
- javascript - 如何定期在桌面屏幕上闪烁消息(或弹出窗口)