MyKinstaダッシュボードを使ってリダイレクトルールを追加できるようになりました!リダイレクトルールを使用すると、トラフィックをシームレスに転送できます。404エラーを防ぎ、更新中の適切なSEOを確保し、訪問者をウェブサイトの正しい場所に転送できるため、特に便利なことです。

無料のWordPressプラグインを使用してリダイレクトを設定すると、そのリダイレクトはwp_redirect関数を使用するためパフォーマンス上の課題が発生することがよくあります。また、wp_optionsテーブルに自動読み込みデータを追加し、データベースの肥大化を促進するものもあります。MyKinstaで追加すると、ルールがサーバーレベルで実行されます。これは、はるかに最適な方法です。作成には以下の手順に従ってください。

リダイレクトルールを追加する方法

ステップ1

リダイレクトを追加するには、MyKinstaで該当のウェブサイトをクリックして「リダイレクト」に進みます。次に「リダイレクトルールの追加」をクリックします。

リダイレクトルールを追加する

リダイレクトルールを追加する

ステップ2

次に、リダイレクトルールの種類を選択します。どの種類のルールを使用するべきかについては、当社のリダイレクトに関する記事をご確認ください。当社のツールは正規表現を使用かつサポートしています。

  • 301リダイレクト:永久に移動されたURLまたはコンテンツの場合に使用されます。SEO目的で使用するものはこちらです。
  • 302リダイレクト:一時的に移動されたURLまたはコンテンツの場合に使用されます。

以下の例では、ブログの内容が完全に変わった投稿のURLに301リダイレクトを追加しました。これにより、Googleからのすべてのトラフィック、バックリンク、リンクジュースなどが新しいURLに転送されるようになります。301リダイレクトは、リンクジュースの90〜99%を転送します。追加するドメインプレフィックスも選択できます。今回の例では、wwwトラフィックも非wwwトラフィックもリダイレクトします。

301リダイレクトを追加する

301リダイレクトを追加する

注:これにより、UTMパラメーターやURLの末尾が自動的にリダイレクトされます。たとえば、旧URLがBufferなどのツールを使用してソーシャルメディアでシェアされている場合、次のように表示されます。

https://wpdev.ink/blogpost/?utm_content=buffer

これは自動的に次にリダイレクトされます。

https://wpdev.ink/newblogpost/?utm_content=buffer

上記の「リダイレクト元」のURLに^が追加されていることにお気づきのことでしょう。これは、Kinstaのリダイレクトツールが自動的に正規表現を使用しているためです。したがって、パスの先頭以外のものとも一致させたい場合を除き、すべての「リダイレクト元」のパスの先頭に^を追加する必要があります。たとえば、/blogpostを単独で使用すると、/category/blogpostなどのその他のURLでリダイレクトループが発生する可能性があります。

Ahrefsなどのツールで現在のバックリンクを確認することも重要です。たとえば、サードパーティのウェブサイトにURLの2つの異なるバージョンを指すバックリンクがある場合があります。

https://wpdev.ink/blogpost
https://wpdev.ink/blogpost/

2番目のリンクの末尾にはバックスラッシュが付いていますね。これを考慮しないと、リダイレクトが機能しない可能性があります。したがって、サードパーティのウェブサイトからのリンクの形式がかわからない場合は、ワイルドカードの正規表現コマンド(?)を使用して、両方が機能するようにしましょう。以下の例をご参照ください。

ワイルドカードのリダイレクト

ワイルドカードのリダイレクト

上記の例では、/blogpostへのリンクも/blogpost/へのリンクも/newblogpostに転送されます。ダッシュボードでリダイレクトルールの管理ができます。

リダイレクトルールの管理

リダイレクトルールの管理

正規表現の使い方

正規表現は、検索パターンを定める文字列です。MyKinstaのリダイレクトツールで使用可能な追加の正規表現の例を以下に示します。 「リダイレクト元」の欄では正規表現をサポートされ、「リダイレクト先」の欄ではグループのリファレンスと変数の一部($host、$schemeなど)がご利用いただけます。次にご注意ください。

  • リダイレクトは、追加した順で確認されます。より具体的なリダイレクトを一般的なものの前に配置することはベストプラクティスです。
  • 当社のリダイレクトツールは、デフォルトで大文字と小文字を区別します。(大文字と小文字を区別しないリダイレクトについては、以下を参照。)
  • ご利用いただけない文字:#、空間、”、改行文字
  • リダイレクトの際に引数をご利用いただけません。

良く使用される正規表現の構文は次のとおりです。

  • ^ :行の最初にマッチする。
  • $ :行の最後にマッチする。
  • ? :0回または1回の表現の繰り返しにマッチする。(オプション)
  • . :任意の一文字にマッチする。
  • * :0回以上の表現の繰り返しにマッチする。
  • \ :特殊文字をエスケープする
  • (?i) :大文字と小文字を区別しない
  • .* :何でもマッチするワイルドカード(任意の長さの文字列とマッチする)
  • (.*) :該当のロケーションの任意の文字列にマッチするワイルドカードを含むグループの指定。

正規表現の例

https://domain.com/storeページを含めましょう。

^/store

https://domain.com/storeページを含めましょう。(大文字と小文字を区別しないリダイレクトを使用)

(?i)^/store

https://domain.com/store.phpなどの単一のファイルを含めましょう。

^/store\.php

すべてのPHPファイルなど、同じ種類のすべてのファイルを含めましょう。

^/store/.*\.php

https://domain.com/*store*など、特定の表現を含むすべてのものを含めましょう。
リダイレクト文字列「/」を指定して、不要なものをリダイレクトする可能性を減らすことをお勧めします。注:当社のツールは正規表現を自動的に適用するため、.*は自動的に適用されてこの場合に追加する必要はありません。

/store or /store/

https://mydomain.com/fast-racingとhttps://mydomain.com/fast-car-racingのURLを両方含めましょう。

^/fast(-car)?-racing

当社のGoogle AMPを無効にする手順に関する記事の例を次に示します。/amp/を含むすべてのブログ投稿を元のAMPなしのURLにリダイレクトして、元のURLのインデックスが再作成されるようにしたかったです。つまり、URLの/amp/の前の部分をとって、「$1」の代わりにそれだけを追加します。

/(.*)\/amp
Google AMPを無効にする正規表現の一例

Google AMPを無効にする正規表現の一例

wwwトラフィックを非wwwにリダイレクト(およびその逆)

すべてのwwwトラフィックに対して、非wwwへの301リダイレクトを追加します。

www.mydomain.com - ^(.*)$ - https://mydomain.com$1
wwwトラフィックのリダイレクト(301)

wwwトラフィックのリダイレクト(301)

リダイレクトが多すぎる

リダイレクトを誤って設定すると、無限のリダイレクトループが発生し、ERR_TOO_MANY_REDIRECTSなどのエラーが表示される可能性があります。この場合は、リダイレクトルールを再確認する必要があります。あるURLが「リダイレクト元」にも「リダイレクト先」にも含まれていることは本異常のよくある原因です。

たとえば、次の場合、リダイレクトループが発生します。

リダイレクト元: ^/blog/about リダイレクト先: https://domain.com/blog/about-me

なぜかと言うと、プロセスが^/blog/aboutまで進むと、残りの-meはもう影響を与えることができず、無限のループが発生します。文字列開始点と終了店を指定する必要があります。修正するには、次のようにします。

リダイレクト元: ^/blog/about リダイレクト先: https://domain.com/blog/about-me

$文字は、文字列が完全に一致するが末尾は何もない場合にのみリクエストをマッチするようにNginxに指示します。

正規表現の参考文献

正規表現の概要と使い方を理解するのに便利なリンクを次に示します。

リダイレクトルールを一括インポートする方法

難しいセットアップの方も、WordPressウェブサイトの301リダイレクトプラグインを削除したい方も必ずいるでしょう。そのため、CSVからリダイレクトルールを一括インポートするオプションもご用意しております。

ステップ1

一括リダイレクトルールを追加するには、MyKinstaで該当のウェブサイトをクリックして「リダイレクト」に進みます。次に「一括リダイレクト」をクリックします。

リダイレクトルールを追加する

リダイレクトルールを追加する

ステップ2

CSVファイルの内容を記入欄に貼り付けます。CSVには、ステータスコード、ドメイン(すべてのドメイン)、リダイレクト元のパスとリダイレクト先のURLの順に、コンマで区切られた情報を含める必要があります。各リダイレクトルールを新しい行に配置してください。次に「リダイレクトルをインポート」をクリックします。

リダイレクトルールの一括インポート

リダイレクトルールの一括インポート

リダイレクトルールの一括削除も可能です。

リダイレクトをエクスポートする方法

数百または数千ものリダイレクトがあるお客様もいることを認識しています。リダイレクトをエクスポートする機能があると、オフラインでの編集や再インポートも容易になるし、必要に応じて別のツールやサービスにも簡単に転送できます。そこで、「CSVへエクスポート」機能が便利でしょう。

リダイレクトのCSVへのエクスポート

リダイレクトのCSVへのエクスポート

WordPressからリダイレクトをエクスポートする

既存のリダイレクトをあるWordPressプラグインからMyKinstaに移行したい場合、プラグインの多くには設定メニューでエクスポート機能があります。(下記の例はEPSリダイレクトプラグインのエクスポート機能です。)一括インポートする前に、リダイレクトが適切な形式であるかを必ず確認してください。

EPSプラグインのエクスポート機能

EPSプラグインのエクスポート機能

Simple 301 Redirectsプラグインをご利用の方は、こちらのExport Simple 301 Redirects to CSVプラグインも利用できます。

注意事項

当社のスタッフは、簡単なリダイレクトの設定を喜んでお手伝いします。ただし、当社はApacheを採用していないため、.htaccessはご利用いただけません。Kinstaは独自の書き換えルールを持つNGINXを採用しています。.htaccessファイルでできることは何でも、Nginxの構文に翻訳できますので、お客様のウェブサイトのNGINX構成ファイルに追加いたします。なお、お客様のサイトの.htaccessファイルに多数の複雑なルールが含まれている場合は、開発者を雇ってNginxに変換し、変換したルールを当社のスタッフに提供していただきますので、ご了承ください。


このチュートリアルが面白かった方なら、当社のサポートも大好きでしょう。Kinstaのすべてのホスティングプランには、ベテランのWordPress開発者とエンジニアによる24時間365日のサポートが付いています。フォーチュン500のお客様をサポートしているチームとチャットしませんか。当社のプランをご確認ください。