地理位置回應標頭未反映AEMaaCS中的使用者端IP位置

來自Adobe Experience Manager as a Cloud Service (AEMaaCS)的HTTP回應中的地理位置標頭無法反映實際使用者端位置。 嘗試使用cdn.yaml檔案設定地理位置時,由於結構錯誤或使用保留的標頭名稱,導致部署錯誤。 若要解決此問題,請更新CDN設定,並從有效的IP進行測試。

說明 description

環境

Adobe Experience Manager as a Cloud Service (AEMaaCS) - Sites (開發)

問題/症狀

  • X-AEM-Client-Country之類的地理位置標頭會傳回預留位置值。
  • 標頭無法出現在來自發佈端點的HTTP回應中。
  • 由於cdn.yaml結構或保留的標頭名稱不正確,因此發生部署錯誤。
  • 回應未反映西班牙文IP位址的預期國家/地區。

解決方法 resolution

若要解決問題,請依照下列步驟進行:

  1. 確定cdn.yaml檔案位於您的Cloud Manager Git存放庫中的/config/cdn.yaml。 避免路徑中出現任何額外的子資料夾或拼寫錯誤。

  2. 編輯cdn.yaml檔案以使用自訂標頭名稱,而不是像x-aem-這樣的保留首碼。 例如,使用Client-Country並定義轉換規則,如下所示:

    code language-none
    kind: "CDN"
       version: "1"
       metadata:
       envTypes: \[ "dev"]
       data:
       responseTransformations:
       rules:
       * name: add-country-header
         when: "\*"
         actions:
         * type: set
           respHeader: "Client-Country"
           value: "{reqHeader:x-aem-client-country}"
           \
    
  3. 確認變更並使用Cloud Manager部署設定。 確保管道完成且沒有YAML語法或標頭命名錯誤。

  4. 使用來自目標國家(例如西班牙)的VPN或具有IP位址的外部網路來測試設定。 這可確保CDN會根據IP將準確的地理位置標題插入HTTP回應中。

  5. 對您的發佈端點執行DNS查閱,以確認其已透過Adobe的CDN路由。 然後,使用詳細的curl -I -v <publish-url>命令來檢查CDN相關的標頭,例如x-cachevia

  6. 在轉換之前,請確定中間系統(例如Dispatcher或快取層)不會移除所需的標頭。

如果問題仍然存在,請檢查管道記錄檔是否有錯誤或警告,並驗證請求的IP位址。 如果中間系統干擾標題注入或轉換,請進一步調查。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f