在AEM as a Cloud Service編寫執行個體上啟用縮短URL的請求轉換
在Adobe Experience Manager (AEM) as a Cloud Service中,製作執行個體上的縮短URL會重新導向至預設起始頁面(/aem/start.html
),而非預期內容。 此問題會影響團隊使用省略/content/websites
首碼的URL來驗證設定檔頁面。 發生此問題的原因是編寫執行個體預設不會套用要求轉換。 您可以使用AEM設定管道來部署自訂CDN設定,以解決此問題。
說明 description
環境
產品: Adobe Experience Manager as a Cloud Service (AEMaaCS) — 網站
執行個體: 透過設定管道部署CDN設定的AEMaaCS作者執行個體
問題/症狀
- 存取縮短的URL (例如
/ui/en/about/people/profiles.user-name+8b1126ad.html
)會重新導向至AEM起始頁面。 - 使用完整路徑
/content/websites/ui/en/about/people/profiles.user-name+8b1126ad.html
可正確顯示設定檔頁面。 - 在AEM as a Cloud Service上,作者執行個體會直接從JCR解析URL,不使用傳統Dispatcher。
原因
根據設計,AEMaaCS只會使用Dispatcher重寫規則在發佈層上套用請求轉換規則。 製作執行個體不會使用Dispatcher,因此不會自動轉換縮短的URL。 若要在製作層級上啟用此功能,必須透過設定管道部署CDN設定。 轉換規則也必須使用正確的語法,包括正確的逸出(例如,\"/content/websites\\\\1\"
)。
解決方法 resolution
若要修正問題,
-
使用AEM設定管道部署CDN設定。 此設定應包含名為
add-content-websites-prefix
的自訂規則。 規則會檢查要求是否在作者層級,以及路徑是否以/ui/
開頭。 如果同時符合兩個條件,則會在/content/websites
前加上前置字元來重寫路徑。code language-none kind: "CDN" version: "1" metadata: { envTypes: [ "dev", "stage", "prod"] } data: requestTransformations: rules: - name: add-content-websites-prefix when: allOf: - { reqProperty: tier, equals: author } - { reqProperty: path, matches: "/ui/" } actions: - type: transform reqProperty: path op: replace match: (.*)$ replacement: "/content/websites\\1"
-
部署設定後,在製作執行個體上測試縮短的URL。 他們現在應該可以正確解析為預期的內容。
其他考量事項
- 雖然開箱即用(OOTB) CDN型請求轉換機制原本會鎖定發佈環境,但您可以透過設定管道部署適當的設定,將其擴充至作者環境。
- Adobe建議在製作執行個體上使用完整路徑進行例行內容驗證。 請一律測試自訂轉換規則,以避免編寫工作流程中斷。
相關閱讀
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f