質問

CQ5 インスタンスは、異なるコンテンツのブランチで複数の Web サイトをホストします。マルチドメインのホスティングシナリオをサポートするために、ドメインを特定のコンテンツブランチにマップする方法を教えてください。

回答、解決策

Apache Sling [1] に基づく CQ5 は、リポジトリベースの設定を通じて必要な機能を提供します。リソースを解決する場合、これらのいわゆるマッピングが適用されます。
 
次の設定例は、Geometrixx Web サイトに基づいており、デフォルトで CQ5 がインストールされています。Geometrixx の Web サイトは既に多言語化されており、例として完全に使用できます。
 
目標は、これらのマッピングを設定することです。

ドメイン コンテンツのブランチ
www.geometrixx.fr /content/geometrixx/fr
www.geometrixx.de /content/geometrixx/de

これらのノードは、CRX Content Explorer を使用して、リポジトリのデフォルトのワークスペースで作成する必要があります。必要なノードタイプは括弧内に:

/etc
   /map                       (sling:Folder)
      /http                   (sling:OrderedFolder)
         /www_geometrixx_fr   (sling:Mapping)
         /www.geometrixx.fr   (sling:Mapping)
         /www_geometrixx_de   (sling:Mapping)
         /www.geometrixx.de   (sling:Mapping)

2つのマッピングが必要:
  • ルートコンテキストを言語ブランチのインデックスページにマッピング。例、www.geometrixx.fr --> /content/geometrixx/fr.html
  • リソースを対応する言語ブランチにマッピング

以下はこの2つのドメインをマッピングするために必要な設定の JSON 記法です。(/etc/map/http.tidy(/etc/map/http.tidy.-1.json):

{
  "jcr:primaryType": "sling:OrderedFolder",
  "www_geometrixx_fr": {
    "sling:internalRedirect": [
      "/content/geometrixx/fr.html"
    ],
    "jcr:primaryType": "sling:Mapping",
    "sling:match": "www.geometrixx.fr/$"
  },
  "www.geometrixx.fr": {
    "sling:internalRedirect": [
      "/content/geometrixx/fr",
      "/"
    ],
    "jcr:primaryType": "sling:Mapping"
  },
  "www_geometrixx_de": {
    "sling:internalRedirect": [
      "/content/geometrixx/de.html"
    ],
    "jcr:primaryType": "sling:Mapping",
    "sling:match": "www.geometrixx.de/$"
  },
  "www.geometrixx.de": {
    "sling:internalRedirect": [
      "/content/geometrixx/de",
      "/"
    ],
    "jcr:primaryType": "sling:Mapping"
  }
}

また、添付されているのは、上の例の設定を持つコンテンツパッケージ [2] です。

適用

CQ5.2.x、CQ5.3

[1] Apache Sling の柔軟なリソース解像度
[2] geometrixx_domain_mapping.zip
 

ダウンロード

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー