サイトマップ
- 適用対象:
- Experience Manager as a Cloud Service
- トピック:
- コアコンポーネント
作成対象:
- 中級
- 開発者
AEM Sites のサイトマップを作成して SEO を強化する方法について説明します。

設定
サイトマップの絶対 URL
AEM のサイトマップは、Sling マッピングを使用して絶対 URL をサポートしています。 これは、サイトマップを生成する AEM サービス(通常は AEM パブリッシュサービス)にマッピングノードを作成することで行われます。
次のように、例えば https://wknd.com
の Sling マッピングノードは、/etc/map/https
で定義できます。
パス | プロパティ名 | プロパティタイプ | プロパティ値 |
---|---|---|---|
/etc/map/https/wknd-site | jcr:primaryType | 文字列 | nt:unstructured |
/etc/map/https/wknd-site | sling:internalRedirect | 文字列 | /content/wknd/(.*) |
/etc/map/https/wknd-site | sling:match | 文字列 | wknd.com/$1 |
以下のスクリーンショットは、同様の設定を示していますが、http://wknd.local
(http
で実行中のローカルホスト名のマッピング)を対象としています。
サイトマップスケジューラーの OSGi 設定
(cron 式を使用して)サイトマップが生成/再生成され、AEM にキャッシュされる頻度について、OSGi ファクトリ設定を定義します。
ui.config/src/main/jcr_content/apps/wknd/osgiconfig/config.publish
{
"scheduler.name": "WKND Sitemaps",
"scheduler.expression": "0 0 2 1/1 * ? *",
"searchPath": "/content/wknd"
}
Dispatcher のフィルター許可ルール
サイトマップのインデックスとサイトマップファイルに対する HTTP リクエストを許可します。
dispatcher/src/conf.dispatcher.d/filters/filters.any
...
# Allow AEM sitemaps
/0200 { /type "allow" /path "/content/*" /selectors '(sitemap-index|sitemap)' /extension "xml" }
Apache web サーバーの書き換えルール
.xml
サイトマップの HTTP リクエストが、基になる正しい AEM ページにルーティングされるようにします。 URL 短縮化を使用しない場合、または Sling マッピングを使用して URL 短縮化を実行する場合、この設定は不要です。
dispatcher/src/conf.d/rewrites/rewrite.rules
...
RewriteCond %{REQUEST_URI} (.html|.jpe?g|.png|.svg|.xml)$
RewriteRule ^/(.*)$ /content/${CONTENT_FOLDER_NAME}/$1 [PT,L]