Apache HTTP 伺服器
當 Apache HTTP 伺服器作為來源伺服器前端的反向 Proxy 時 (自行託管設定,不含 AEM Dispatcher),就會套用此設定。 這會將代理式流量 (來自 AI 機器人和 LLM 使用者代理的要求) 路由至邊緣最佳化後端服務 (live.edgeoptimize.net)。 真人訪客和 SEO 機器人仍照常由您的來源伺服器提供服務。 若要測試設定,在完成設定之後,請於回應中尋找 x-edgeoptimize-request-id 標頭。
此整合是一組原生 Apache Include檔案,不需要部署任何程式碼或工作程式。 您只需下載三個檔案、設定 API 金鑰,並將兩行新增至虛擬主機在虛擬主機中新增兩行 Include 指令即可完成。
先決條件
設定 Apache 路由規則之前,請確定您已準備好以下項目:
設定
1. 下載設定檔
從邊緣最佳化程式碼範例存放庫下載三個邊緣最佳化引入檔,並將其放置於 Apache 伺服器上的目錄 (例如 conf/oae/):
oae-routing.confoae-failover.confdomains.conf您不需要修改 oae-routing.conf 或 oae-failover.conf,直接使用原始內容即可。
2. 啟用網域並設定 API 金鑰 (domains.conf)
編輯domains.conf,並為每個要啟用的網域新增一行設定。 以您的網域取代主機,並使用Adobe Brand Visibility UI中的金鑰取代YOUR_API_KEY。 未列出的網域仍會維持原有路由,因此您可以一次啟用一個網域。
SetEnvIfExpr "%{HTTP_HOST} =~ m#(?i)^(www\.)?example\.com(:\d+)?$#" OAE_DOMAIN_ENABLED=1 OAE_API_KEY=YOUR_API_KEY
3. 將檔案加入至虛擬主機
在現有的 <VirtualHost *:443> 中新增兩行 Include 指令。 路由檔案須放在重寫與 ProxyPass 規則之前;容錯移轉檔案則放在其之後。 在下方範例中,只有標記為 #NEWLINE 的內容需要新增至邊緣最佳化,其餘項目 (如 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,請確認已設定 CacheQuickHandler Off,以確保系統會在邊緣最佳化標頭設定完成後才進行快取尋找。透過防火牆規則允許邊緣最佳化 (選用)
如果您的CDN使用WAF或機器人管理員:
-
允許列出WAF或機器人管理員中的
*AdobeEdgeOptimize/1.0*使用者代理程式,讓Edge最佳化服務可以擷取您的來源內容。 -
如果您的防火牆需要使用者代理程式以外的其他驗證,請產生密碼(例如,
openssl rand -hex 32)並:- 將帶有密碼的
x-edgeoptimize-fetcher-key新增到路由規則中與其他x-edgeoptimize-*標頭一起。 - 新增WAF或機器人管理員規則以允許
x-edgeoptimize-fetcher-key符合相同密碼的請求。
- 將帶有密碼的
-
在Edge最佳化會依原樣轉送此標題 — 您擁有完整的金鑰生命週期。
驗證設定
完成設定後,請確認機器人流量會路由至 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 標頭。 頁面內容和回應時間應與啟用邊緣最佳化之前維持相同。
3. 如何區分這兩種情境
x-edgeoptimize-request-idx-edgeoptimize-fo1)流量路由的狀態也可以在Adobe Brand Visibility UI中檢視。 瀏覽至 客戶組態 並選取 CDN組態 標籤。
若要進一步瞭解Edge最佳化,包括可用的機會、自動最佳化工作流程和常見問答,請返回Edge最佳化概覽。