Apache HTTP サーバー
この設定は、Apache HTTP サーバーがオリジンの前段でリバースプロキシとして機能する場合(AEM Dispatcher を 使用しない セルフホスト型の構成)に適用されます。 エージェントトラフィック(AI ボットや LLM ユーザーエージェントからのリクエスト)を Edge での最適化バックエンドサービス(live.edgeoptimize.net)にルーティングします。 人間の訪問者と SEO ボットは、通常どおりオリジンから引き続き提供されます。 設定をテストするには、設定が完了したら、応答のヘッダー x-edgeoptimize-request-id を探します。
この統合は、Apache のネイティブな Include ファイルのセットであり、デプロイするコードやワーカーはありません。 3 つのファイルをダウンロードし、API キーを設定して、仮想ホストに 2 Include 行を追加します。
前提条件
Apache のルーティングルールを設定する前に、次のものがあることを確認します。
- これらのモジュールが有効になっている Apache HTTP サーバー 2.4 以降:
proxy、proxy_http、ssl、rewrite、headers、env、setenvif。 - Apache 設定(サイトの
<VirtualHost>)へのアクセス権と、Apache を再読み込みできる権限。 - Adobe Brand Visibility UI から取得された Edge Optimize API キー。 手順について詳しくは、API キーの取得を参照してください。
- (オプション)ステージングルーティングをテストするには、Staging API キーを参照してください。
設定
1. 設定ファイルをダウンロード
Edge での最適化コードサンプルリポジトリから 3 つの Edge での最適化インクルードファイルをダウンロードし、Apache サーバー上のディレクトリ(例:conf/oae/)に配置します。
oae-routing.confoae-failover.confdomains.confoae-routing.conf と oae-failover.conf を変更する必要はありません。そのまま使用します。
2. ドメインを有効にして API キー(domains.conf)を設定
domains.conf を編集し、有効にするドメインごとに 1 行を追加します。 ホストを自分のドメインに置き換え、YOUR_API_KEY を Adobe Brand Visibility UI から取得したキーに置き換えます。 リストに含まれていないドメインは変更されずにオリジンにルーティングされるので、一度に 1 つのドメインを有効にできます。
SetEnvIfExpr "%{HTTP_HOST} =~ m#(?i)^(www\.)?example\.com(:\d+)?$#" OAE_DOMAIN_ENABLED=1 OAE_API_KEY=YOUR_API_KEY
3. 仮想ホストにファイルを組み込む
既存の <VirtualHost *:443> に 2 行の Include を追加します。 ルーティングファイルは、既存の書き換えおよび ProxyPass ルールよりも 前 に配置し、フェイルオーバーファイルはそれらの 後 に配置します。 以下の例では、#NEWLINE のマークが付いた行だけが Edge での最適化に追加する行です。それ以外(ServerName、ProxyPass、その他)はすべて既存の変更されていない設定です。
Define OAE_CONF_DIR conf/oae #NEWLINE directory holding the OAE include files
<VirtualHost *:443>
ServerName www.example.com
Include "${OAE_CONF_DIR}/oae-routing.conf" #NEWLINE OAE routing — BEFORE your Rewrite & ProxyPass rules
# --- your existing rewrite rules and ProxyPass to origin ---
ProxyPass "/" "https://www.example.com/"
ProxyPassReverse "/" "https://www.example.com/"
Include "${OAE_CONF_DIR}/oae-failover.conf" #NEWLINE OAE failover — AFTER your ProxyPass rules
</VirtualHost>
4. Apache をリロード
設定を検証し、Apache をリロードして、変更を適用します。
Vary: x-edgeoptimize-config が設定されます)。 Apache ですでに mod_cache を使用している場合は、Edge での最適化ヘッダーの設定後にキャッシュ検索が実行されるよう、CacheQuickHandler Off が設定されていることを確認します。ファイアウォールルールで Edge での最適化を許可(任意)
CDN で WAF または Bot Manager を使用している場合:
-
Optimize at Edge サービスがオリジンコンテンツを取得できるよう、WAF または Bot Manager で
*AdobeEdgeOptimize/1.0*ユーザーエージェントを許可リストに追加します。 -
ファイアウォールでユーザーエージェント以外の追加の検証が必要な場合は、シークレット(例:
openssl rand -hex 32)を生成し、次の操作を行ってください。- 他の
x-edgeoptimize-*ヘッダーとともに、ルーティングルールにシークレットを含むx-edgeoptimize-fetcher-keyを追加します。 x-edgeoptimize-fetcher-keyが同じシークレットと一致するリクエストを許可するよう、WAF または Bot Manager のルールを追加します。
- 他の
-
Edge での最適化は、このヘッダーをそのまま転送するため、お客様が鍵のライフサイクル全体を管理することになります。
設定の検証
設定が完了したら、ボットトラフィックが 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)トラフィックルーティングのステータスは、Adobe Brand Visibility UI でも確認できます。顧客設定に移動し、「CDN 設定」タブを選択します。
利用可能な機会、自動最適化ワークフロー、FAQ など、Optimize at Edge について詳しくは、Optimize at Edge の概要に戻ってご確認ください。