Akamai (BYOCDN)

此配置将代理式流量(来自 AI 机器人和 LLM 用户代理的请求)路由到 Edge Optimize 后端服务(live.edgeoptimize.net)。 人类访客和 SEO 机器人仍将照常从您的源站获得响应。 完成设置后,可在响应中查找头部 x-edgeoptimize-request-id 以测试配置是否成功。

先决条件

在配置 Akamai 属性管理器规则之前,请确保您已具备以下条件:

  • 可以为您的域访问 Akamai 属性管理器。
  • 从Edge UI检索到Adobe Brand Visibility优化API密钥。 有关步骤,请参阅检索您的 API 密钥
  • (可选)要测试暂存路由,请参阅暂存 API 密钥

设置选项

可通过两种方式在Edge上为Akamai配置以进行优化:

选项1:Adobe Brand Visibility中的引导式设置

引导式设置要求您自己的Akamai帐户中具有Akamai EdgeGrid API客户端,该客户端具有​ 属性管理器(PAPI) — 读 — 写 ​目标属性的组和合同访问权限,以及在Akamai暂存和生产环境中激活属性版本的权限。 Adobe Brand Visibility仅将这些凭据用于设置,不会存储它们。

准备Akamai EdgeGrid API客户端

如果您还没有合适的API客户端,请在Akamai控制中心创建一个:

  1. 打开​管理>身份和访问
  2. 在​ 用户和API客户端 ​上,选择​创建API客户端
  3. 选择​我自己,然后选择​高级。 将客户端限制为​属性管理器(PAPI) — READ-WRITE,仅保留目标组和合同,并确认在暂存和生产环境中激活的权限。
  4. 创建客户端,然后立即下载或复制凭据文件。 您需要客户端密钥、API主机、访问令牌和客户端令牌。 客户端密钥只显示一次。

在Akamai Identity and Access Management中创建API客户端

将API客户端限制为属性管理器(PAPI)读写

NOTE
将凭据文件存储在组织批准的密码管理器中。 Adobe Brand Visibility不存储这些凭据;这些凭据将保留在您的浏览器会话中,并在您关闭部署仪表板时清除。

部署路由配置

  1. 为要配置的URL打开​CDN配置
  2. 在​ 将优化部署到AI代理 ​中,根据需要选择​启用
  3. 选择​在Akamai (Beta)中部署路由
  4. 粘贴EdgeGrid凭据文件,或分别输入客户端密钥、API主机、访问令牌和客户端令牌,然后连接。
  5. 选择Akamai资产,审查建议的更改,然后按照引导式步骤进行部署。 在激活新资产版本之前获得批准。

从Adobe Brand Visibility在Akamai中 部署路由

NOTE
引导式设置可作为符合条件的帐户的早期访问功能。 要获得入门培训帮助,请联系您的Adobe客户团队或发送电子邮件至llmo-at-edge@adobe.com

选项 2:手动设置

使用以下步骤可手动配置Akamai属性管理器规则。

配置

以下 Akamai 属性管理器规则可将代理式 HTML 页面流量路由至 Edge Optimize。 该配置包括以下步骤:

​1. 设置路由条件(用户代理和 HTML 流量匹配)

为以下用户代理设置路由:

 *AdobeEdgeOptimize-AI*
 *ChatGPT-User*
 *GPTBot*
 *OAI-SearchBot*
 *PerplexityBot*
 *Perplexity-User*
 *ClaudeBot*
 *Claude-User*
 *Claude-SearchBot*
NOTE
仅将 Optimize at Edge 路由规则应用于代理式 HTML 页面流量。 常见的设置是使用请求端条件(如​文件扩展名)来匹配无扩展名页面 URL 的 htmlEMPTY_STRING。 如果您的网站通过其他 URL 模式提供 HTML,或包含无扩展名的非页面路由(如 API 端点),请通过添加基于路径的条件来优化该规则。

设置路由条件

​2. 设置源站和 SSL 行为

将源站设置为 live.edgeoptimize.net,将 SAN 与 *.edgeoptimize.net 匹配

NOTE
如果添加 Optimize at Edge 规则后属性激活失败,请检查该规则是否使用了与默认规则不同的源服务器 SSL 验证模式。 如果是这样,请更新 Optimize at Edge 规则,以匹配默认规则。 例如,如果默认规则使用​平台设置,那么这个规则中也应使用​平台设置。 如果您无法使用所需的设置,请联系 Akamai 支持部门。

设置源站和 SSL 行为

​3. 设置缓存键变量

将缓存键变量 PMUSER_EDGE_OPTIMIZE_CACHE_KEY 设置为 LLMCLIENT=TRUE;X_FORWARDED_HOST={{builtin.AK_HOST}}

设置缓存键变量

​4. 缓存规则

缓存规则

​5. 修改传入请求标头

将以下传入请求标头:
x-edgeoptimize-api-key 设置为从 LLMO 检索到的 API 密钥
x-edgeoptimize-config 设置为 LLMCLIENT=TRUE;
x-edgeoptimize-url 设置为 {{builtin.AK_URL}}

修改传入请求标头

允许 Optimize at Edge 通过防火墙规则(可选)

如果您的CDN使用WAF或机器人管理器:

  • 在WAF或机器人管理器中允许列表*AdobeEdgeOptimize/1.0*用户代理,以便Edge上的优化服务可以获取您的源内容。

  • 如果您的防火墙需要用户代理以外的其他验证,请生成密钥(例如,openssl rand -hex 32)并:

    • 将带有密码的x-edgeoptimize-fetcher-key添加到您的路由规则中其他x-edgeoptimize-*标头旁边。
    • 添加WAF或机器人管理器规则,以允许请求x-edgeoptimize-fetcher-key与同一密码匹配。
  • 在Edge中优化会按原样转发此标头 — 您拥有完整的密钥生命周期。

在属性管理器中设置 x-edgeoptimize-fetcher-key 标头

NOTE
另外,在 Akamai Bot Manager 中将*AdobeEdgeOptimize/1.0*用户代理和 x-edgeoptimize-fetcher-key 标头列入允许列表。

​6. 修改传入响应标头

修改传入响应标头

​7. 缓存 ID 修改

缓存 ID 修改

​8. 更改传出请求头

x-forwarded-host 头部设置为 {{builtin.AK_HOST}}

更改传出请求头

​9. 站点故障转移

站点故障转移配置包含两个部分:一是在 Optimize at Edge 主路由规则中配置故障转移行为;二是配置一个同级规则,在发生回退时添加响应头。

9a. 配置站点故障转移行为

在 Optimize at Edge 主路由规则中,创建一个名为​ 站点故障切换行为 ​的子规则。 将其设置为​匹配任意条件,并添加以下条件:

  • 响应状态代码​位于 400599 范围内。
  • 源站超时​为 Yes

站点故障切换

配置站点故障切换行为

9b. 配置故障转移响应标头规则

IMPORTANT
EdgeOptimize 故障转移测试头​规则作为路由规则的​同级(在同一级别)创建——而不是​嵌套在路由规则中。 在 Akamai 属性管理器规则树中,层级结构应如下所示:
code language-none
▼ Optimize at Edge                         ← parent rule group
      ▼ Optimize at Edge Routing               ← routing child
          Site Failover Behavior                 ← nested child
      EdgeOptimize Failover - Test Header      ← sibling of routing child
当 Akamai 为原始主机名重新创建失败的请求时,会评估此同级规则。 路由规则中的 API-key 条件可防止该请求再次被发送至 Edge Optimize。
此外,应确保 Optimize at Edge 路由​规则不会被任何后来匹配的,会更改源站、缓存行为或相同请求的缓存 ID 的规则所覆盖。 如果其他匹配规则重置了这些行为,Optimize at Edge 路由或缓存可能就无法按预期工作。

配置故障切换响应头规则

网站故障转移可确保当 Edge Optimize 返回错误或发生超时时,Akamai 会为您的原始主机名重新创建请求,从而使访客仍能收到网站的正常响应。

场景
行为
Edge Optimize 返回 2XX3XX
返回经过优化的响应。 响应中会包含 x-edgeoptimize-request-id
Edge Optimize 返回 4XX-5XX,或源站发生超时
系统会针对原始主机名重新创建该请求。 响应中会包含 x-edgeoptimize-fo: true

验证设置

完成设置后,验证机器人流量是否被路由到 Edge Optimize,以及人类流量是否不受影响。

1. 测试机器人流量(应被优化)

用代理式用户代理模拟 AI 机器人请求:

curl -svo /dev/null https://www.example.com/page.html \
  --header "user-agent: chatgpt-user"

成功的响应包括 x-edgeoptimize-request-id 头部,用于确认请求是通过 Edge Optimize 路由的:

< HTTP/2 200
< x-edgeoptimize-request-id: 50fce12d-0519-4fc6-af78-d928785c1b85

2. 测试人类流量(不应受影响)

模拟一个常规的人类浏览器请求:

curl -svo /dev/null https://www.example.com/page.html \
  --header "user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"

响应​ ​应包含 x-edgeoptimize-request-id 头部。 页面内容和响应时间应保持与启用 Optimize at Edge 之前时完全相同。

3. 如何区分这两种场景

页眉
机器人流量(已优化)
人类流量(不受影响)
x-edgeoptimize-request-id
存在——包含唯一的请求 ID
不存在
x-edgeoptimize-fo
仅在发生故障转移的情况下存在(值:true
不存在

也可以在Adobe Brand Visibility UI中查看流量路由的状态。 导航到​ 客户配置 ​并选择​ CDN配置 ​选项卡。

将优化部署到 AI 代理——已完成

要进一步了解Edge优化,包括可用的机会、自动优化工作流和常见问题,请返回Edge优化概述

recommendation-more-help
brand-visibility-help-main-toc