creagia/laravel-web-mailer

Laravel Web Mailer

1.0.3 2024-03-04 12:22 UTC

This package is auto-updated.

Last update: 2024-09-08 02:20:43 UTC


README

此包包含一个Web Mailer,它会捕获所有发送的电子邮件。然后,您可以通过访问路由/web-inbox来查看它。电子邮件将被存储在存储文件夹中的文件中。

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Inbox screenshot

支持我们

Laradir banner

要求

此包需要PHP 8.1和Laravel 9。如果您需要与旧版本的兼容性,请检查替代方案部分。

安装

您可以通过Composer安装此包

composer require creagia/laravel-web-mailer

之后,打开您的config/mail.php文件,并在mailers配置数组中添加Web Mailer条目。

'mailers' => [
    // ...
    'web' => [
        'transport' => 'web',
    ],
],

最后,您可以通过在.env文件中设置定义的Mailer来启用Web Mailer设置

MAIL_MAILER=web

我们建议您发布配置文件,以便进行一些自定义设置

php artisan vendor:publish --tag="web-mailer-config"

收件箱URL

默认查看电子邮件的URL是/web-inbox。您可以通过在.env文件中添加以下条目来更改它

WEB_MAILER_ROUTE_PREFIX="your-custom-url"

路由保护

默认情况下,收件箱URL对拥有链接的任何人都是授权的。如果您需要添加一些保护,您可以修改config/web-mailer.php文件上的middleware数组。

删除所有存储的电子邮件

php artisan laravel-web-mailer:clear-all

删除超过N天的存储电子邮件

php artisan laravel-web-mailer:cleanup

您可以通过运行或计划执行laravel-web-mailer:cleanup命令来删除超过N天的电子邮件。默认情况下,它将删除超过7天的电子邮件。您可以通过在config/web-mailer.php文件中更改delete_emails_older_than_days参数来自定义天数。

测试

composer test

变更日志

有关最近更改的更多信息,请参阅变更日志

替代方案

贡献

有关详细信息,请参阅CONTRIBUTING

安全漏洞

有关报告安全漏洞的详细信息,请查看我们的安全策略

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件