Documentation

パターンリダイレクトの利用

利用可能 7.4 U42+/GA42+

パターンリダイレクトは、正規表現を使用して、複数のソースURLとその置換のパターンを定義します。 このため、新しいURLにマッピングする必要のあるURLの大きなグループがある場合に最適です。 NginxやApacheのようなWebサーバーを使用して一括リダイレクトを設定することができますが、Liferayはこの機能をすぐに提供するので、Liferay DXPで直接パターンリダイレクトを設定することができます。

重要

Liferayでは、リダイレクトパターンは現在のサイトのフレンドリURLを元にフレンドリURLとして解釈されます。 このため、非フレンドリーなURL(バーチャルホスト名やポート番号など)を使用したリダイレクトパターンを使用したり、現在のサイト以外のページにユーザーをリダイレクトすることはできません。

また、使用する正規表現によっては、パターンリダイレクトは alias redirects よりも遅く、意図したよりも多くの URL がマッチする結果になることがあります。 これらの理由から、ほとんどのユースケースでエイリアスリダイレクトを推奨しています。 設定方法については、リダイレクトツールの使用をご覧ください。

以下の手順で、サイトのパターンリダイレクトを設定します。

  1. 目的のサイトに移動する。

  2. サイトメニュー(Site Menu) を開き、 設定 を展開し、 サイト設定 に進みます。

  3. コンテンツとデータ」の「ページ」 をクリックし、「リダイレクトパターン」 タブに移動します。

    [システム設定]の[ページ]をクリックし、 [リダイレクトパターン]タブを表示します。

  4. リダイレクトパターンを入力します。 必要に応じて、 plus ボタンをクリックすると、サイトに複数のリダイレクトパターンを追加することができます。

    各リダイレクトパターンは、ソースURLパターンとデスティネーションURLパターンを含む必要があります。 これらの値は、同じエントリに追加され、1つ以上のスペースで区切られる。 ソースURLを設定する場合は、正規表現を使用します。 各正規表現は、各ページのフレンドリーURLの先頭に暗黙のうちに固定されています(例: /home は、正規表現では ^/home と同じです)。

    Liferayは、Java正規表現パッケージが提供するすべての操作をサポートします。 詳しくは、 JDK公式ドキュメント をご覧ください。

    リダイレクトパターンの送信元URLと送信先URLを入力します。

    Tip

    必要であれば、参照を使用して、置換パターン内のURLのグループを捕捉することができます。 例えば、上の画像では $1 という値が (\d+) という正規表現で捉えられた値群に置き換えられています。

  5. Save] をクリックします。

ユーザーがソースURLにアクセスしようとすると、LiferayはレイアウトフレンドリーなURLに対して、指定された順序でパターンをテストします。 マッチングは、おおよそこのようなルールで行われます。

  • URLがコントロールパネルのURLの場合、コントロールパネルのURLを捕捉することができないため、マッチングは行われません。

  • 現在のURLにエイリアスリダイレクトがある場合、ユーザーはそのリダイレクト先のURLにリダイレクトされます。

  • エイリアスが見つからなかった場合、Liferay はすべてのパターンを使い切るか、どれかがマッチするまで、それぞれのリダイレクトパターンを順番にテストします。 Liferay はユーザーを最初のマッチにリダイレクトします。

追加情報