配置自定义域以处理打开和单击跟踪 - Amazon Simple Email Service

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

配置自定义域以处理打开和单击跟踪

当您使用事件发布来捕获打开和点击事件时,Amazon SES 会对您发送的电子邮件进行细微更改。要捕获打开的事件,请在发送的每封电子邮件中SES添加一个 1 像素 x 1 像素的透明GIF图像,SES该图像包含每封电子邮件的唯一文件名,并托管在由操作的服务器上SES;当图像被下载时,SES可以准确分辨出哪封邮件以及由谁打开。

默认情况下,此像素将插入电子邮件底部;不过,一些电子邮件提供商的应用程序会在电子邮件超出特定大小时截断电子邮件预览,并且可能会提供用于查看邮件的其余部分的链接。在这种情况下,SES像素跟踪图像不会加载,并且会降低您要跟踪的打开率。要解决此问题,您可以选择将像素置于电子邮件的开头或其他任何位置,方法是将 {{ses:openTracker}} 占位符插入电子邮件正文中。SES收到带有占位符的消息后,它将替换为打开的跟踪像素图像。

重要
  • 任何超过一个的{{ses:openTracker}}占位符将在发送时移除。SES

  • 如果您在电子邮件模板中使用{{ses:openTracker}}占位符,请仅添加一个占位符,因为多个占位符会导致返回400 BadRequestException错误代码。

要捕获链接点击事件,请将电子邮件中的链接SES替换为指向由操作的服务器的链接SES。这会立即将收件人重定向到其预期目标。向该服务器发出的请求的标头(包括 Cookie)的总大小不得超过 8192 字节,否则将返回400 BadRequestException错误代码。

您还可以选择使用自己的域名,而不是由其拥有和运营的域名SES,为收件人创造更具凝聚力的体验,这意味着所有SES指标都将被删除。您可以配置多个自定义域以处理打开和单击跟踪事件。这些自定义域与配置集关联。当您使用某个配置集发送电子邮件时,如果该配置集被配置为使用自定义域,则电子邮件中的打开和单击链接将自动使用该配置集中指定的自定义域。

本节包含在您拥有的服务器上设置子域以自动将用户重定向到所SES运营的打开和点击跟踪服务器的过程。设置这些域涉及到三个步骤。首先,配置子域本身,再设置一个配置集来使用自定义域,然后设置其事件目标以发布打开和单击事件。本主题包含完成所有这些步骤的过程。

但是,如果您只希望在不设置自定义域的情况下启用打开或单击跟踪,则可以直接为配置集定义事件目标以支持针对指定的事件类型(包括打开和单击事件)触发的事件发布。配置集可以具有已定义多个事件类型的多个事件目标。请参阅 创建亚马逊SES活动目的地

第 1 部分:设置用于处理打开和单击链接重定向的域

设置重定向域的具体步骤因您的虚拟主机提供商(以及您的内容分发网络,如果您使用HTTPS服务器)而异。以下各节中的过程提供了一般性指导,而不是具体步骤。

选项 1:配置HTTP域

如果您计划使用HTTP域来处理打开和点击的链接(而不是HTTPS域名),则配置子域的过程只需要几个步骤。

注意

如果您设置了使用该HTTP协议的自定义域,并且发送了一封包含使用该HTTPS协议的链接的电子邮件,则当您的客户点击您的电子邮件中的链接时,他们可能会看到一条警告消息。如果您计划发送包含使用该HTTPS协议的链接的电子邮件,则应使用HTTPS域名来处理点击跟踪事件。

要设置用于处理打开和点击链接的HTTP子域名
  1. 创建用于打开和单击跟踪链接的子域。SES建议该子域专门用于处理这些链接,并建议 AWS 区域 您为要跟踪的每封电子邮件创建一个子域名。

  2. 验证子域名是否与一起使用。SES有关更多信息,请参阅 创建域身份

  3. 在子域的DNS设置中添加一条新CNAME记录,将请求重定向到SES跟踪域。您重定向到的地址必须与您的自定义子域 AWS 区域 相同。

    下表包含可用的追踪域名列表, AWS 区域 请选择与您的自定义域名位于同一区域的追踪域名:SES

    AWS 区域 AWS 追踪域名
    美国东部(俄亥俄) r.us-east-2.awstrack.me
    美国东部(弗吉尼亚州北部) r.us-east-1.awstrack.me
    美国西部(加利福尼亚北部) r.us-west-1.awstrack.me
    美国西部(俄勒冈州) r.us-west-2.awstrack.me
    非洲(开普敦) r.af-south-1.awstrack.me
    亚太地区(雅加达) r.ap-southeast-3.awstrack.me
    亚太地区(孟买) r.ap-south-1.awstrack.me
    亚太地区(大阪) r.ap-northeast-3.awstrack.me
    亚太地区(首尔) r.ap-northeast-2.awstrack.me
    亚太地区(新加坡) r.ap-southeast-1.awstrack.me
    亚太地区(悉尼) r.ap-southeast-2.awstrack.me
    亚太地区(雅加达) r.ap-southeast-3.awstrack.me
    亚太地区(雅加达) r.ap-southeast-3.awstrack.me
    Asia Pacific (Tokyo) r.ap-northeast-1.awstrack.me
    加拿大(中部) r.ca-central-1.awstrack.me
    欧洲地区(法兰克福) r.eu-central-1.awstrack.me
    欧洲地区(爱尔兰) r.eu-west-1.awstrack.me
    欧洲地区(伦敦) r.eu-west-2.awstrack.me
    欧洲地区(米兰) r.eu-south-1.awstrack.me
    欧洲(斯德哥尔摩) r.eu-north-1.awstrack.me
    以色列(特拉维夫) r.il-central-1.awstrack.me
    中东(巴林) r.me-south-1.awstrack.me
    南美洲(圣保罗) r.sa-east-1.awstrack.me
    AWS GovCloud (美国西部) r.us-gov-west-1.awstrack.me
    AWS GovCloud (美国东部) r.us-gov-east-1.awstrack.me
    注意

    根据您的虚拟主机提供商,您对子域名DNS记录所做的更改可能需要几分钟才能生效。您的 Web 托管提供商或 IT 组织可能提供有关这些延迟的其他信息。

选项 2:配置HTTPS域

您也可以使用HTTPS域名来跟踪打开和链接点击。要设置HTTPS域名以跟踪打开和链接点击,除了设置域HTTP名所需的步骤外,您还必须执行一些其他步骤。

要设置用于处理打开和点击链接的HTTPS子域名
  1. 创建用于打开和单击跟踪链接的子域。SES建议该子域专门用于处理这些链接,并建议 AWS 区域 您为要跟踪的每封电子邮件创建一个子域名。

  2. 验证子域名是否与一起使用。SES有关更多信息,请参阅 创建域身份

  3. 使用内容分发网络 (CDN)(例如 Amazon)创建新账户 CloudFront,请参阅基本 CloudFront 分发入门

  4. 例如,CDN将配置为起点,即SESr.us-east-1.awstrack.me跟踪域。CDN必须指向与您的自定义域名位于同一区域的 AWS 跟踪域。CDN必须将请求者提供的Host标头传递给来源,有关更多信息,请参阅这篇 AWS re: Post 文章

    下表包含可用的追踪域名列表, AWS 区域 请选择与您的自定义域名位于同一区域的追踪域名:SES

    AWS 区域 AWS 追踪域名
    美国东部(俄亥俄) r.us-east-2.awstrack.me
    美国东部(弗吉尼亚州北部) r.us-east-1.awstrack.me
    美国西部(加利福尼亚北部) r.us-west-1.awstrack.me
    美国西部(俄勒冈州) r.us-west-2.awstrack.me
    非洲(开普敦) r.af-south-1.awstrack.me
    亚太地区(雅加达) r.ap-southeast-3.awstrack.me
    亚太地区(孟买) r.ap-south-1.awstrack.me
    亚太地区(大阪) r.ap-northeast-3.awstrack.me
    亚太地区(首尔) r.ap-northeast-2.awstrack.me
    亚太地区(新加坡) r.ap-southeast-1.awstrack.me
    亚太地区(悉尼) r.ap-southeast-2.awstrack.me
    亚太地区(东京) r.ap-northeast-1.awstrack.me
    加拿大(中部) r.ca-central-1.awstrack.me
    欧洲地区(法兰克福) r.eu-central-1.awstrack.me
    欧洲地区(爱尔兰) r.eu-west-1.awstrack.me
    欧洲地区(伦敦) r.eu-west-2.awstrack.me
    欧洲地区(米兰) r.eu-south-1.awstrack.me
    欧洲(斯德哥尔摩) r.eu-north-1.awstrack.me
    以色列(特拉维夫) r.il-central-1.awstrack.me
    中东(巴林) r.me-south-1.awstrack.me
    南美洲(圣保罗) r.sa-east-1.awstrack.me
    AWS GovCloud (美国西部) r.us-gov-west-1.awstrack.me
    AWS GovCloud (美国东部) r.us-gov-east-1.awstrack.me
  5. 如果您使用 Route 53 来管理您的域和 CloudFront您的域的DNS配置,请在 Route 53 中创建一条引用您的CDN CloudFront分配的别名记录(例如 d111111abcdef8.cloud front.net)。有关更多信息,请参阅《Amazon Route 53 开发人员指南》中的使用 Amazon Route 53 控制台创建记录

    否则,在子域的DNS配置中,添加一条引用您的CDN地址的CNAME记录。

  6. 从受信任的SSL证书颁发机构获取证书。证书应涵盖您在步骤 1 中创建的子域以及您在步骤 3—5 中配置的CDN子域。将证书上传到CDN。

  7. 您可以使用以下 curl 命令来验证新创建的自定义域名是否使用了正确的区域和HTTPS协议。在以下示例中,除了您的域名之外,所有内容都是字面意思:

    curl --head https://custom.domain.com/favicon.ico

    返回的响应如下例所示:

    (python-sdk-test) jdoe@12a34567b89c BaconRedirectService % curl --head https://custom.domain.com/favicon.ico HTTPS/1.1 200 OK x-amz-ses-region: us-east-1 x-amz-ses-request-protocol: https Content-Type: image/x-icon Transfer-Encoding: chunked Date: Fri, 30 Aug 2024 13:50:14 GMT

    此响应包含以下属性:

    • x-amz-request-region头值是收到请求的SES区域。

    • x-amz-request-protocol头值是标头SES中用于CDN和之间的请求的协议。

    如果您的设置正确,则该区域应反映您的域名创建所在的区域,协议也应如此HTTPS。

第 2 部分:通过配置集指定您的自定义重定向域和HTTPS策略

将域名配置为处理打开和点击跟踪重定向后,您必须在配置集中指定您的自定义域名和HTTPS策略。

使用配置集发送电子邮件时,如果该配置集配置为使用自定义重定向域,则该电子邮件中的打开和点击链接将自动使用配置集中指定的自定义域和HTTPS策略选项。

您可以使用SES控制台或 CreateConfigurationSetv2 API 操作完成此操作。

使用控制台指定自定义重定向域和HTTPS策略
  • 创建或编辑配置集时,使用步骤 4 中的跟踪选项创建配置集来指定您的自定义重定向域和HTTPS策略选项。

要指定自定义重定向域和HTTPS策略,请使用 AWS CLI

您可以在 SES API v2 中使用该CreateConfigurationSet操作并使用TrackingOptions属性来指定您的自定义重定向域和HTTPS策略。您可以从调用此操作, AWS CLI 如以下示例所示。

  • 在要发送和跟踪电子邮件 AWS 区域 的地点创建配置集:

    aws sesv2 create-configuration-set --cli-input-json file://create.json
  • 在此示例中,输入文件使用TrackingOptions属性的参数 — CustomRedirectDomain 指定用于跟踪打开和点击链接的自定义域,并HttpsPolicy指定HTTPS策略选项:

    { "ConfigurationSetName": "my-config-set", "TrackingOptions": { "CustomRedirectDomain": "marketing.example.com", "HttpsPolicy": "REQUIRE" }, "SendingOptions": { "SendingEnabled": true } }

    对于HttpsPolicy参数,可以指定以下值来设置自定义重定向域的打开和点击跟踪链接的协议:

    • OPTIONAL—(默认行为)打开的跟踪链接将使用封装HTTP。点击跟踪链接将使用链接的原始协议进行封装。

    • REQUIRE— “打开” 和 “点击” 跟踪链接都将使用封装HTTPS。

    • REQUIRE_OPEN_ONLY— 打开的跟踪链接将使用封装HTTPS。点击跟踪链接将使用链接的原始协议进行封装。

第 3 部分:通过配置集指定打开和点击事件类型

在上一步的配置集中指定自定义域和HTTPS策略后,必须通过配置集指定要在事件目标中跟踪的打开和/或点击事件类型。

您可以使用SES控制台或 CreateConfigurationSetEventDestinationv2 API 操作完成此操作。

使用控制台选择打开和/或点击事件类型