Akamai(BYOCDN)
この設定では、エージェントトラフィック(AI ボットおよび LLM ユーザーエージェントからのリクエスト)を Edge での最適化バックエンドサービス(live.edgeoptimize.net)にルーティングします。 人間の訪問者と SEO ボットは、通常どおりオリジンから引き続き提供されます。 設定をテストするには、設定が完了したら、応答のヘッダー x-edgeoptimize-request-id を探します。
前提条件
Akamai Property Manager ルールを設定する前に、次の内容を確認します。
- ドメインの Akamai Property Manager へのアクセス権。
- LLM Optimizer UI から取得された Edge Optimize API キー。 手順については、API キーの取得を参照してください。
- (オプション)ステージング ルーティングをテストするには、 ステージング API キーを参照してください。
設定
次のAkamai Property Manager ルールは、エージェント型HTML ページトラフィックをEdge Optimizeにルーティングします。 設定には、次の手順が含まれます。
1. ルーティング条件の設定(User-AgentとHTMLのトラフィックの一致)
次のユーザーエージェントのルーティングを設定します。
*AdobeEdgeOptimize-AI*
*ChatGPT-User*
*GPTBot*
*OAI-SearchBot*
*PerplexityBot*
*Perplexity-User*
htmlとEMPTY_STRINGを一致させることができます。 サイトが他のURL パターンからHTMLを提供している場合、またはAPI エンドポイントなどの拡張なし非ページルートを含んでいる場合は、パスベースの条件を追加してルールを絞り込みます。
2. オリジンと SSL の動作を設定
オリジンを live.edgeoptimize.net として設定し、SAN を *.edgeoptimize.net に一致させます。
3. キャッシュキー変数を設定
キャッシュキー変数 PMUSER_EDGE_OPTIMIZE_CACHE_KEY を LLMCLIENT=TRUE;X_FORWARDED_HOST={{builtin.AK_HOST}} に設定します。
4. キャッシュルール
5. 受信リクエストヘッダーを変更
次の受信リクエストヘッダーを設定します。
LLMOから取得したAPI キーへのx-edgeoptimize-api-keyx-edgeoptimize-config コピー先: LLMCLIENT=TRUE;x-edgeoptimize-url ~ {{builtin.AK_URL}}
ファイアウォール ルールを使用してEdgeで最適化を許可する(オプション)
CDNでWAFまたはBot Managerを使用している場合:
-
WAFまたはBot Managerで
*AdobeEdgeOptimize/1.0*ユーザーエージェントを許可リストに加えるして、Optimize at Edge サービスがオリジンコンテンツを取得できるようにします。 -
ファイアウォールでユーザーエージェント以外の追加の検証が必要な場合は、秘密鍵(例:
openssl rand -hex 32)を生成し、次の操作を行います。- ルーティングルールのシークレットを他の
x-edgeoptimize-*ヘッダーと共にx-edgeoptimize-fetcher-keyを追加します。 - WAFまたはBot Manager ルールを追加して、
x-edgeoptimize-fetcher-keyが同じシークレットと一致するリクエストを許可します。
- ルーティングルールのシークレットを他の
-
Edgeで最適化すれば、このヘッダーをそのまま転送できます。ユーザーは鍵のライフサイクル全体を所有しています。
*AdobeEdgeOptimize/1.0* ユーザーエージェントとx-edgeoptimize-fetcher-key ヘッダーも許可リストに加えるします。6. 受信応答ヘッダーを変更
7. キャッシュ ID の変更
8. 送信リクエストヘッダーを変更
x-forwarded-host ヘッダーを {{builtin.AK_HOST}} に設定します。
9. サイトフェイルオーバー
サイトフェイルオーバー設定には、フェイルオーバー動作(メインの optimize-at-edge ルーティングルール内で設定)と、個別のフェイルオーバーテストヘッダールールの 2 つの部分かがあります。
9a. サイトフェイルオーバー動作(メインの optimize-at-edge ルーティングルール内)
メインのルーティングルール内で、サイトフェイルオーバー動作と高度な XML スニペットを次のように設定します。
高度な XML を通じて、リクエストヘッダー x-edgeoptimize-request に値 fo を追加します。
<forward:availability.fail-action2>
<add-header>
<status>on</status>
<name>x-edgeoptimize-request</name>
<value>fo</value>
</add-header>
</forward:availability.fail-action2>
9b. フェイルオーバーテストヘッダールール(兄弟ルール)
| code language-none |
|---|
|
リクエストヘッダーの x-edgeoptimize-request の値が fo の場合、送信応答ヘッダーの x-edgeoptimize-fo を true に設定します。
サイトフェイルオーバーにより、Edge での最適化が 4XX または 5XX エラーを返した場合、リクエストは自動的にデフォルトのオリジンにルーティングされるので、エンドユーザーは応答を引き続き受信できます。
2XX が返される4XX または 5XX が返される設定の検証
設定が完了したら、ボットトラフィックが Edge での最適化にルーティングされていることと、人間のトラフィックに影響がないことを確認します。
1. ボットトラフィックをテスト(最適化する必要があります)
エージェント型ユーザーエージェントを使用して、AI ボットリクエストをシミュレートします。
curl -svo /dev/null https://www.example.com/page.html \
--header "user-agent: chatgpt-user"
正常な応答には、リクエストが Edge での最適化を経由してルーティングされたことを確認する x-edgeoptimize-request-id ヘッダーが含まれます。
< 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 ヘッダーを含め ない でください。 ページのコンテンツと応答時間は、Edge での最適化を有効にする前と同じ状態を維持する必要があります。
3. 2 つのシナリオを区別する方法
x-edgeoptimize-request-idx-edgeoptimize-fo1)トラフィックルーティングのステータスは、LLM Optimizer UIでも確認できます。 顧客設定に移動し、CDN設定 タブを選択します。
利用可能なオポチュニティ、自動最適化ワークフロー、FAQなど、Edgeでの最適化について詳しくは、Edgeでの最適化の概要に戻ります。