ZeroPlus Gateについて

\ シェア /

FacBook
Twitter
LINE
はてブ
PPocket
ZeroPlus Media > Web制作 > HTML/CSS > HTMLリダイレクトの実装方法をサンプルを用いてわかりやすく解説

HTMLリダイレクトの実装方法をサンプルを用いてわかりやすく解説

HTML/CSS

2021/12/21

2023/04/14

Webサイトをリニューアルしてもリダイレクトを設定しないと、旧サイトにユーザーがアクセスした際「404ページ-お探しのページが見つかりません」という画面が表示されてしまいます。

それでは、せっかくサイトを訪れてくれたユーザーが離れてしまいます。

今回は、ユーザーが離れないようにリダイレクトを実装する方法を紹介します。

今回の記事でできるようになること
  • リダイレクトの種類
  • リダイレクトの実装方法

ZeroPlus Gateについて

プログラミング学習でこのような経験はありませんか?

  1. 目標に向けて何を学べば良いかわからない
  2. 調べても解決策が見つからない
  3. 現場レベルのスキルが身につくのか不安

これらの悩みは、学習環境を整えることで全て解決することができます。

ZeroPlus Gateでは、30日間無料で最適な学習環境を提供しています。

  1. なんでも相談できる専属メンター
  2. いつでも技術相談ができるプロ講師
  3. 元IT企業CTO監修のカリキュラム

条件なしでこのレベルの環境を無料で提供しているのはZeroPlus Gateだけです。
ただし、無料サービスの提供には参加者の数に制限があります。

少しでも興味がある方は、以下のリンクからサービスの詳細をご覧ください。

今すぐZeroPlus Gateの詳細を見る

リダイレクトとは

リダイレクト画像

リダイレクトは、サイトのURLが変更される際に元々のサイトURLから新規URLへとユーザーを誘導したい時に利用します。

リダイレクトを設定せずにサイトのドメインを変更してしまうと、今まで貯めてきたSEOの評価を失ってしまいます

リダイレクトを設定することによりURLが変わったとしても、元々のSEO評価を引きつぐことができます。

リダイレクトの種類

リダイレクトには301リダイレクト302リダイレクトがあります。
用途に合わせて使い分けられるようになりましょう。

301や302というのは「W3C」が定めるステータスコードの一種で、300番台のステータスコードはリダイレクト(転送)を意味します。

301リダイレクト

301リダイレクトは恒久的な移転を知らせる目的で使うのが適当です。

難しく聞こえるかもしれませんが、古いURLを永遠に使わない時に使用すると覚えておきましょう。

例えば、下記の場合に301リダイレクトを利用します。

  1. サイトをドメインごと変更
  2. サイト内の1部を別のページを移動したい
  3. 重複ページを見せないための対応

www.の有無などで同一のページが表示される場合、googleには重複コンテンツとみなされてしまうのでリダイレクトを実装することが推奨されています。

302リダイレクト

一方302リダイレクトは一時的な転送を知らせる目的で使うのが適当です。

例えば、下記の場合に302リダイレクトを利用します。

  1. 特定のページのリニューアル
  2. 条件に応じてリダイレクトを行いたい

リニューアルに関しては一時的な避難場所としてリダイレクトを実装することが想像つくかもしれません。

条件に応じてとは、PCやスマホで表示を分けていたり、国やIPなどの条件に応じて表示を分けたい場合を指します。
そのような条件があるときは302リダイレクトを実装しましょう。

ZeroPlusgate50教材の動画

リダイレクトの実装方法

具体的には3種類のリダイレクト方法があります

  • .htacces
  • meta
  • JS・PHP

実装方法がそれぞれ異なるので、順番に紹介します。

.htaccess

まず、.htaccessファイルを使う上での条件をを紹介します。

下記の条件が揃っていない方は別の方法で実装しましょう。

  • Webサーバーが「Apache」であること
  • Webサーバー上で「.htaccessファイル」を利用できること

自分でサーバーを準備しておらず、レンタルサーバーを利用している方は確認してから次に進みましょう。

実装方法はとても簡単で.htaccessファイルを作成しサーバーにアップすれば完了です。

.htaccessファイルを複数設置する事も可能です。
しかし、内容が重複している場合は下層ディレクトリ内の.htaccessファイルの記述が優先されます。

.taccessファイルのサンプル

RewriteEngine On

# ページ単位で移動
RewriteRule ^index-old\.html$ https://〇〇/index-new.html [R=301,L]

# www無しのURLに統一
RewriteCond %{HTTP_HOST} ^www\.〇〇\.com
RewriteRule ^(.*) http://〇〇.com/$1 [R=301,L]

# www有りのURLに統一
RewriteCond %{HTTP_HOST} ^〇〇\.com
RewriteRule ^(.*) http://www.〇〇.com/$1 [R=301,L]

# index.html無しのURLに統一
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://〇〇.com/$1 [R=301,L]

# httpをhttpsに統一
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

今回は実装する機会が多い5パターンをサンプルとして載せています。
ドメインや状況に応じて使い分けられるようになりましょう!

上記を記述しても実装できない場合は、以下の点を確認しましょう。

改行ははいっていますか?

.htaccessファイルの最後の行の末端に改行が入ってない場合エラーになります。

改行は複数入っていても大丈夫です。

 

改行ははいっていますか?

.htaccessファイルで指定したパスは正しく記入されているかどうか確認してみましょう。

 

レンタルサーバーの仕様は確認しましたか?

レンタルサーバーによって.htaccessファイルの仕様が異なります。

meta

次はmetaタグの記述でリダイレクトを実装する方法を紹介していきます。

metaタグを利用するとhead内に1行追加するだけで、リダイレクトを実装できます。

そのため、非常に簡単で非エンジニアの方でも手軽に実装ができます。

しかし、ブラウザが1度ページを読み込む必要があるため、処理に時間がかかってしまいます。

 

googleのSEOに関しての仕様が明らかになっていないので、確かではありませんがSEOへの影響があると言われています。

GoogleはWebサーバーに指示を出すリダイレクト(.htaccess)をお勧めしています。

metaタグのリダイレクトは下記の際にとても力を発揮します。

  • ECサイトの購入画面からホームページに戻る際
  • 数時間の間だけ、リダイレクトを実装したい時

実装する機会は少ないですが、エンジニアとして引き出しが増えることはいいことです。
頭の片隅には入れておきましょう。

metaリダイレクトサンプル

<meta http-equiv="refresh" content="5;URL="index-new.html">

content="5"の記述により、5秒後にリダイレクトを実行することが指示されています。
URL="index-new.html"によりindex-new.htmlへとリダイレクトすることが指示されています

JS・PHP

最後にJSやPHPを使ったリダイレクトを紹介していきます。

JavaScriptサンプル

<script>
  setTimeout("location.href='index-new.html'",1000*5);
</script>

PHPサンプル

<?php  
  header('Location: https://techacademy.jp/');

先程のmetaタグの利用と同じくらい実装は簡単です。

JavaScript、PHP共に1行のみで実装することができます。

しかし、GoogleはJavaScriptの実装もPHPの実装もおすすめしていません。
理由は先程と同様で、どちらも301(302)リダイレクトとは認識されないのです。

ZeroPlusgate50教材の動画

まとめ

今回はリダイレクトについてと実装方法を解説しました。

理解するのが1番大変なものは「.htaccessファイルによる実装」です。
しかし、長年積み重ねてきたSEOの評価がなくならないように、しっかりとリダイレクトを理解して実装しましょう。

ZeroPlus Gateについて

プログラミング学習でこのような経験はありませんか?

  1. 目標に向けて何を学べば良いかわからない
  2. 調べても解決策が見つからない
  3. 現場レベルのスキルが身につくのか不安

これらの悩みは、学習環境を整えることで全て解決することができます。

ZeroPlus Gateでは、30日間無料で最適な学習環境を提供しています。

  1. なんでも相談できる専属メンター
  2. いつでも技術相談ができるプロ講師
  3. 元IT企業CTO監修のカリキュラム

条件なしでこのレベルの環境を無料で提供しているのはZeroPlus Gateだけです。
ただし、無料サービスの提供には参加者の数に制限があります。

少しでも興味がある方は、以下のリンクからサービスの詳細をご覧ください。

今すぐZeroPlus Gateの詳細を見る

\ 学んだことをSNSでシェアしよう /

おすすめのタグ

この記事の執筆者

ZeroPlus Media変種部

ZeroPlus Media編集部

ZeroPlusは、「フリーランス特化型プログラミングスクール」です。ZeroPlus Mediaでは、フリーランスとして活躍する際に役立つ有益なプログラミングやWeb制作に関する情報を発信しています。

質問について

ZeroPlus Media読者限定で質問対応をおこなっています。以下の2つの方法で質問を受け付けています。

選べる2つの質問方法

1

Google Foam(テキスト)で質問

mail

フォーム送信

メールで解答

formで質問
2

Google meet(オンラインmtg)で質問

meet

日時選択

メールを受け取る

メールからmtgに参加

meetで質問
ZeroPlus Gateについて

あなたの目的に合わせた2つのサービス

あなたの目的に合わせたZeroPlusの2つのサービス
基礎からフリーランスレベルまで本質的な学びを提供しています

完全無料!30日間で学びきれる
プログラミンスクールZeroPlus Gate

  • お金をかけずに、学習を進めたい
  • Webサイトを作れるようになりたい
  • メンターや講師に質問しながら学習したい

詳しくはこちらから

フリーランス特化型
プログラミングスクール ZeroPlus

  • プログラミング学習で悩んでいる
  • 仲間と一緒に学習したい
  • フリーランスとしての総合的な力を養いたい

詳しくはこちらから