radig/gear-mailer

该包已被弃用且不再维护。未建议替代包。

使用Gearman和Amazon SES异步发送电子邮件

安装: 132

依赖: 0

建议者: 0

安全: 0

星标: 1

关注者: 5

分支: 0

公开问题: 0

类型:cakephp-plugin

1.2.0 2014-03-12 20:15 UTC

This package is auto-updated.

Last update: 2021-04-14 13:16:23 UTC


README

一个插件,允许使用Gearman和Amazon SES发送电子邮件。

要求

安装

使用Composer

  • 请检查Gearman扩展是否已安装并加载到PHP中
  • 在项目根目录下执行
    composer install radig/gear-mailer

不使用Composer

  • 请检查Gearman扩展是否已安装并加载到PHP中
  • 将此存储库克隆、下载或作为子模块放置在Plugins中
  • 在app/Vendor/AWS中安装aws-sdk

配置

创建一个具有以下配置的电子邮件配置

public $default = [
    'transport' => 'GearMailer.Gear'
];

在您的bootstrap.php中,按照以下方式包含通过AWS SES API发送电子邮件的凭据

Configure::write('GearMailer.credentials', [
    'key'    => 'sua chave AWS',
    'secret' => 'sua chave secreta AWS'
    'region' => ''
]);

为了激活负责实际发送电子邮件的Gearman Worker,有两种选择

(1) 使用Systemd管理后台进程

编辑Vendor/gearmailer.service文件,将第6行更改为您的安装中的有效值,然后退出

ExecStart=/usr/bin/php ABSOLUTE_PATH_TO_gearman_email_worker.php

例如,可以留下如下内容

ExecStart=/usr/bin/php /srv/www/app/Plugin/GearMailer/Vendor/gearman_email_worker.php

复制生成的文件,并在您的发行版的目录中配置服务。对于OpenSUSE,将文件(作为root)复制到以下目录:
/usr/lib/systemd/system/gearmailer.service

启用服务

systemctl enable gearmailer.service

启动服务

systemctl start gearmailer.service

(2) 执行CakePHP控制台

Console/cake GearMailer.EmailWorker

并让控制台保持运行。

发送电子邮件

只需使用CakeEmail进行常规电子邮件发送即可

    $email = new CakeEmail()
        ->from($from)
        ->to($to)
        ->subject($subject)
        ->send();

作者和版权

  • 版权所有 2013-2014 Radig – IT解决方案
  • MIT许可证 – 这意味着代码没有提供任何保证,但您可以在保持信用的情况下单独使用或与自己的代码一起使用,除非明确指出相反。请参阅附带的文件中的详细信息。