資源對應 resource-mapping

資源對應可用來定義Adobe Experience Manager (AEM)的重新導向、虛名URL和虛擬主機。

例如,您可以使用這些對應來:

  • 請在所有要求加上前置詞/content,使您的網站訪客無法看見內部結構。
  • 定義重新導向,將網站/content/en/gateway頁面的所有要求重新導向至https://gbiv.com/

一個可能的HTTP對應會為所有要求加上前置詞localhost:4503/content。 類似這樣的對應可用於對網站的訪客隱藏內部結構,因為它允許:

localhost:4503/content/we-retail/en/products.html

存取方式:

localhost:4503/we-retail/en/products.html

因為對應會自動將前置詞/content新增至/we-retail/en/products.html

CAUTION
虛名URL不支援規則運算式模式。
NOTE
如需進一步資訊,請參閱Sling檔案以及資源解析🔗資源的對應。

檢視對應定義 viewing-mapping-definitions

「JCR資源解析器」會評估(由上到下)以尋找相符專案的對應表單兩個清單。

可以在Felix主控台的​ JCR ResourceResolver ​選項下檢視這些清單(連同組態資訊);例如https://<*host*>:<*port*>/system/console/jcrresolver

  • 設定
    顯示目前的設定(如Apache Sling Resource Resolver所定義)。

  • 設定測試
    這可讓您輸入URL或資源路徑。 按一下​ 解析 ​或​ 對應 ​以確認系統如何轉換專案。

  • 解析器對應專案
    ResourceResolver.resolve方法用來將URL對應至資源的專案清單。

  • 對應對應專案
    ResourceResolver.map方法用來將資源路徑對應至URL的專案清單。

這兩個清單會顯示各種專案,包括應用程式所定義的預設專案。 這些通常旨在簡化使用者的URL。

清單會以​ Pattern (符合要求的規則運算式)與定義要強制重新導向的​ Replacement ​配對。

例如:

模式 ^[^/]+/[^/]+/welcome$

將觸發:

取代 /libs/cq/core/content/welcome.html

若要重新導向請求:

https://localhost:4503/welcome »

至:

https://localhost:4503/libs/cq/core/content/welcome.html

新的對應定義會在存放庫中建立。

NOTE
有許多資源可協助說明如何定義規則運算式。 例如,https://www.regular-expressions.info/

在AEM中建立對應定義 creating-mapping-definitions-in-aem

在AEM的標準安裝中,您可以找到資料夾:

/etc/map/http

這是定義HTTP通訊協定的對應時使用的結構。 可以在/etc/map下為您要對應的任何其他通訊協定建立其他資料夾(sling:Folder)。

設定內部重新導向至/content configuring-an-internal-redirect-to-content

若要建立以/content為任何https://localhost:4503/請求前置詞的對應:

  1. 使用CRXDE導覽至/etc/map/http

  2. 建立節點:

    • 型別 sling:Mapping
      此節點型別適用於此類對應,但並不強制使用。

    • 名稱 localhost_any

  3. 按一下​ 「儲存全部」

  4. 新增 ​下列屬性至此節點:

    • 名稱 sling:match

      • 型別 String

      • localhost.4503/

    • 名稱 sling:internalRedirect

      • 型別 String[]

      • /content/

  5. 按一下​ 「儲存全部」

這會處理如下請求:
localhost:4503/geometrixx/en/products.html
就好像:
localhost:4503/content/geometrixx/en/products.html
已被要求。

NOTE
請參閱Sling檔案中的資源,以取得有關可用Sling屬性以及如何設定這些屬性的進一步資訊。
NOTE
您可以使用/etc/map.publish來儲存發佈環境的設定。 必須復寫這些專案,並為發佈環境的Apache Sling Resource Resolver的​ 對應位置 ​設定新位置(/etc/map.publish)。
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2