AEM Dispatcher:書き換えルールの変更により、ナビゲーション URLが英語サイトにリダイレクトされる
この記事では、Adobe Experience Manager(AEM)で、ローカライズされたサイトのナビゲーションリンクがDispatcherの設定やルールの変更により、ユーザーを英語サイトに誤ってリダイレクトする問題を解決する方法について説明します。
説明 description
環境
Adobe Experience Manager(AEM)。URLの書き換えとキャッシュにDispatcherを使用しています。
症状
- ローカライズされたサイト(中国語や日本語など)のナビゲーションリンクを使用すると、ユーザーはローカライズされた意図されたページではなく、英語版(例:
/en)にリダイレクトされます。 - グローバルナビゲーションのすべてのURLには、ユーザーのロケールに関係なく
/enが追加されます。 - この問題はターゲット環境に存在しますが、ナビゲーションが期待どおりに機能する参照環境には存在しません。
- エラーメッセージは表示されませんが、ナビゲーションは正しいローカライズされたコンテンツにルーティングされません。
原因
Dispatcher設定が最近変更されたため、書き換えルールまたはマッピングの不一致が発生し、すべてのナビゲーションリンクが、意図したロケールを尊重する代わりに、デフォルトの英語サイト(/en)に変更されました。 これは多くの場合、Dispatcher設定ファイルの言語固有の書き換えルールが見つからないか、変更されたことが原因です。
解決策 resolution
問題を解決するには、次の手順に従います。
-
最近のDispatcher設定の変更を確認します。
-
影響を受ける環境と正常な参照環境の間で、Dispatcher設定ファイル(
dispatcher_vhost.confやrewrite.rulesなど)を比較します。 -
異なるロケール (例:
/jp、/cn、/en)の言語コードのルーティングとURL マッピングを処理するルールに焦点を当てます。
-
-
Dispatcherの書き換えルールを復元または修正します。
-
ロケール固有のルーティングの原因となる欠落または変更された書き換えルールを特定します。
-
設定で、すべてのナビゲーションが
/enにデフォルトで設定されていないことを確認してください。
-
-
リソースリゾルバーとバニティ URL マッピングを検証します。
- パブリッシュインスタンスで、リソースリゾルバーマッピングとバニティ URL設定がサポートされているすべてのロケールに存在することを確認します。
-
ターゲット環境に設定の更新を適用します。
-
修正したDispatcher設定をデプロイします。
-
変更を加える前に、現在の設定ファイルのバックアップを取ります。
-
-
DispatcherとCDN キャッシュをクリアします。
- 設定を更新した後、Dispatcher キャッシュとCDN キャッシュをクリアして、変更が即座に反映されるようにします。
-
ナビゲーションの動作を確認します。
- 影響を受けるすべてのローカライズされたサイトでナビゲーションをテストして、URLが正しいローカライズされたページにルーティングされ、デフォルトの
/enでなくなったことを確認します。
- 影響を受けるすべてのローカライズされたサイトでナビゲーションをテストして、URLが正しいローカライズされたページにルーティングされ、デフォルトの