Setting Up Redirects and 404 Tracking
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

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

7.4 U48+/GA48+で利用可能

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

重要

Liferay は、現在のサイトのフレンドリ URL に基づいてリダイレクト パターンをフレンドリ URL として解釈するため、非フレンドリ URL (仮想ホスト名、ポート番号など) でリダイレクト パターンを使用したり、現在のサイト範囲外のページにリダイレクトしたり (つまり、サイト A のページ A からサイト B のページ B にリダイレクトしたり) することはできません。

ただし、アドレスの前にプロトコルを追加することで、外部の Web サイトにリダイレクトできます。 (例: 外部 Web サイトにリダイレクトするには、http://www.externalwebsite.com を使用します)。

使用する正規表現によっては、パターン リダイレクトは エイリアス リダイレクト よりも遅くなり、意図したよりも多くの URL 一致が発生する可能性があります。 これらの理由から、可能な限りエイリアスリダイレクトを推奨します。 詳細については、 リダイレクトと 404 トラッキングの設定 を参照してください。

パターンリダイレクトの作成

  1. サイト メニュー (Site Menu) を開き、 構成リダイレクトに移動します。

  2. パターン タブに移動します。

    リダイレクトアプリケーションの[パターン]タブに移動します。

  3. [Pattern]フィールドに、ソースURLの正規表現を入力します。 各ページのフレンドリURLの先頭に暗黙的に固定されているため、/homeは、正規表現では ^/homeと同じになります。

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

  4. 行先URLを入力します。

    宛先 URL が無効な場合は、有効な URL を入力するように求める警告が表示されます。 また、URL が長すぎる場合は省略記号で切り捨てられます。

    ヒント

    リファレンスを使って、URLのグループを置換パターンでキャプチャできます。 たとえば、次の画像では、 $1 の値は、 (\d+) 正規表現によってキャプチャされた値のグループに置き換えられます。

    リダイレクトパターンのソースURLと行先URLを入力します。

  5. [ユーザー エージェント] フィールドで、オプションを選択します。

    • すべて (デフォルト): フィルタリングせずにすべてのユーザー エージェントにパターンを適用します。

    • ボット: パターンをボットにのみ適用します。 システムは、クローラー ユーザー エージェント リストを使用してボットを識別します。

      リストを表示または編集するには、 グローバル メニュー (Global Menu) に移動し、 コントロール パネルシステム設定に移動して、コンテンツとデータの下の ページ をクリックし、システム スコープの下にある クローラー ユーザー エージェント を選択します。

    • 人間: パターンを人間のユーザーのみに適用し、ボットをリダイレクトから除外します。

  6. (オプション) プラス (Plus icon) または 削除 (Delete icon) をクリックして、パターンを追加するか、既存のパターンを削除します。

  7. [保存]をクリックします。

警告

循環リダイレクトを作成しないようにします。 これらは、コンテンツフレンドリURLのリダイレクトを定義する際に簡単に作成できます(例:同じコンテンツに対して異なるフレンドリURL間でリダイレクトする)。 Liferay はこれらのループを確実に検出することができません。

パターンリダイレクトの作成:ドメインの変更

https://www.old-site.com と https://www.new-site.com のような 2 つのドメインがある場合、一方のドメインからもう一方のドメインにページをリダイレクトできます。

  1. https://www.old-site.com に移動します。

  2. サイト メニュー (Site Menu) を開き、 構成リダイレクトに移動します。

  3. パターンの下に、 ^(.*)を追加します。

    この正規表現は、ソース要求の URL パス全体をキャプチャします。

  4. [宛先 URL] の下に、 https://www.new-site.com/$0を追加します。

    $0 は、ソースからキャプチャした URL パス全体を宛先 URL に追加します。

  5. [保存]をクリックします。

これで、https://www.old-site.com/examplepage にアクセスすると、https://www.new-site.com/examplepage にリダイレクトされます。

パターンリダイレクトを理解する

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

  • URLがコントロールパネルURLの場合、コントロールパネルのURLをキャプチャすることができないため、一致は行われません。

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

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