ホームページ作成/アクセス制限・認証、サイト内検索

移転先へ自動移動(転送/リダイレクト)させる方法

ホームページを別のURLへ移転した際に便利な、指定したページへ自動的に移動(リダイレクト)させる方法を解説。すぐに自動転送するほか、旧サイトの全ページに同じ「新しいホームページへの引っ越し案内」を一括表示する方法も説明。.htaccess・HTML・JavaScriptの3通りでリダイレクトする書き方を紹介しています。

西村 文宏

執筆者:西村 文宏

ホームページ作成ガイド

リダイレクトとは

新URLへ自動移動

旧URLから新URLへ転送することをリダイレクトという

ウェブ上でのリダイレクト(Redirect)とは、あるURLから別のURLに転送することです。アクセスされた瞬間に自動移動させることで、転送された事実に気付かれないくらい一瞬で移動させることもできますし、転送の予告を数秒間ほど案内した後に自動移動させることもできます。

また、その移転が恒久的なのか一時的なのかを示すこともできます。この種別は、検索エンジンに対して「移転前のURLと移転先のURLのどちらを登録すれば良いのか?」を知らせる役にも立ちます。

 

ウェブサイトを移転した場合など、指定したURLに自動的に転送させたい

ウェブサイト全体や、特定のページにアクセスしてきたユーザを、指定のURLに自動転送したい場合があります。例えば、以下のような場合です。
 
  • ウェブサイトを引っ越して、URLが変更になった場合
  • ウェブサイトの構造を改変して、一部のファイル名やディレクトリ名が変更になった場合
  • URLにwwwを付けずにアクセスしてきたユーザを、www付きのURLに移動させたい場合

※なお、ウェブサイトをHTTPS化したために、「http://~」のURLから「https://~」のURLにリダイレクトしたい場合の方法は、記事「SSL証明書を取得してHTTPS化する設定方法」で解説していますので、別途ご参照下さい。

 

自動転送(リダイレクト)のタイミング2種類

自動転送(リダイレクト)方法2種類

自動転送(リダイレクト)方法2種類

移転先へ自動転送するタイミングには、下記の2種類があります。
 
  1. アクセスされた瞬間に自動転送する
  2. しばらくは「移転した旨のメッセージ」を表示してから、数秒後に自動転送する

両者には、それぞれ以下のメリットとデメリットがあります。

 
1. アクセスされた瞬間に自動転送する場合
ユーザがアクセスした瞬間に移転先へ自動転送する方法なら、ユーザは「転送された事実」に気付かないくらいスムーズに閲覧を継続できるメリットがあります。転送元のURLは、ブラウザの履歴にも残りません。しかし、「ウェブサイトが移転した事実」そのものに気付きにくいため、ブックマークやリンクを修正する必要性にも気付いてもらえないデメリットがあります。

2. しばらく移転メッセージを表示してから自動転送する場合
自動転送の前に移転案内ページを数秒間だけ表示する方法なら、ユーザは「ウェブサイトが移転した事実」に気付きやすいメリットがあります。しかし、案内ページを表示する分、待ち時間が発生するデメリットがあります。また、「移転案内を表示したページ」自体もブラウザの履歴に残るため、「戻る」ボタンをクリックすると再度同じ移転案内ページが表示されてしまいます。

 
どちらの転送方法が望ましい?
直接自動転送する方が望ましい

直接自動転送する方が望ましい


もし、一時的に移転しただけの場合や、旧URLをずっと維持可能な場合(=同じドメイン内で移転する場合など)なら、前者(1)の方が親切でしょう。この場合は、自動転送した事実に気付いてもらう必要性はあまりありませんから。

 
メッセージを挟んで転送する方が望ましい

移転した旨のメッセージを挟んでから転送する方が望ましい

しかし、もし将来的に旧URLが完全に使用不可能になる(=ドメインを変更した場合など)なら、周知効果の高い後者(2)を採用する方が望ましいでしょう。そうすれば、リンクやブックマークを修正する必要性に気付いてもらいやすくなります。

 

自動転送(リダイレクト)する方法3種類

上記のような自動転送機能を実現するには、いくつかの方法があります。本記事では、以下の3つの転送方法をご紹介いたします。
 
  • .htaccessファイルを作って一括転送する方法
  • HTMLにmeta要素(タグ)を書いて自動転送する方法
  • JavaScriptを使って自動転送する方法

それぞれのメリット・デメリットは以下の通りです。

方法(1) .htaccessファイルを作って一括自動転送(リダイレクト)機能を用意する
「.htaccess」ファイルで一括転送

「.htaccess」ファイルで一括転送


ウェブサーバの設定ファイルである「.htaccess」という特殊なファイルを作成すると、ウェブサイトへのアクセス者を指定のURLへ簡単に自動転送(リダイレクト)できます。

最大のメリットは、たった1ファイルを作るだけで、サイト内(または指定範囲)の全ページで自動転送が可能になる点です。デメリットは、特にありません。ただ、どんなサーバでも使用可能というわけではなく、無料スペースでは使えないこともあります。

 
方法(2) HTMLにmeta要素を書いて自動転送(リダイレクト)機能を用意する
HTMLのmeta要素で自動移動

HTMLのmeta要素で自動移動


HTMLソース内に、指定の書式でmeta要素を1行記述すると、アクセス者を任意のURLに自動転送できます。

メリットは、HTMLだけで実現できるので、あらゆる環境で利用可能だという点です。また、「何秒後に自動転送するか」を指定できるため、「移転メッセージを見せてから、数秒後に自動転送する」といった処理も簡単に作れます。デメリットは、自動転送したいページ1つ1つにこの記述を加えなければならないため、ページ数が多い場合には記述作業が面倒になる点です。

 
方法(3) JavaScriptを使って自動転送(リダイレクト)機能を用意する
JavaScriptで自動移動

JavaScriptで自動移動


JavaScriptを使うことでも、アクセス者を任意のURLに転送できます。

HTMLのmeta要素を使って転送する場合と同様に、自動転送したいページ1つ1つに記述を加える必要があります。しかし、「すべてのページで共通して読み込まれるJavaScriptファイル」が存在するなら、そのファイルに記述を追加することで、全ページの一括転送が可能です。「.htaccess」ファイルが使えないサーバでは、代わりにこの方法を使う手もあります。
 

移転先への転送方法3つは、複合して利用することも可能

次のページから、上記それぞれのリダイレクト方法を順にご紹介いたします。目的やサーバ環境に合わせて選択して下さい。なお、どれか1つの方法しか使えないわけではありません。例えば「.htaccessファイルを使って移転メッセージを一括表示し、HTMLのmeta要素を使って指定秒数後に自動転送する」といった組み合わせも可能です。

【この記事の目次】
  • 1
  • 2
  • 3
  • 4
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます