.htaccessリダイレクトの書き方!特定のページの設定法や効かない際の対処法
.htaccessとは、Appacheをはじめとした、各種Webサーバーを制御する設定ファイルです。またリダイレクトとは、あるWebサイトやページにアクセスしてきたユーザーを、強制的に別ページへ転送する設定のことです。今回は.htaccessリダイレクトに焦点を当て、その概要や重要性・メリット、できること、書き方、注意点などをご紹介します。気になるポイントを一挙確認してしまいましょう。
.htaccessリダイレクトとは
ここでは、.htaccessリダイレクトについて解説します。
.htaccessとは?
.htaccessとは、Apacheをはじめとした、各種Webサーバーを制御する設定ファイルです。
HTMLやCSSファイルなどと同じく、ディレクトリ内に設置すると機能し、ファイル内に、指定の制御に相当するソースを記述することで様々な設定が行えます。
基本的に、WebサイトはHTMLやCSSなどのマークアップ言語で構成されています。
しかし、リダイレクト処理については、マークアップ言語で処理できないため、サーバー側で対応する必要があるのです。
リダイレクトとは?
リダイレクトとは、あるWebサイトやページにアクセスしてきたユーザーを、強制的に別ページへ転送する設定のことです。
リダイレクトの重要性とメリット
削除したWebサイトやページのURLを別ページに貼られているリンクや検索結果からクリックすると「Not Found」などのエラーメッセージが表示されます。
リダイレクトを設定すると、旧サイトへの訪問者を新サイトへと誘導でき、機会損失を避けることができます。
またリダイレクトはSEO対策においても重要です。
リダイレクトを設定すれば、旧サイトの評価を新サイトへと引き継ぐことができます。
さらにURLを統一・正規化することで、ドメインやページの評価も統一され、ページ分析やアクセス解析がしやすくなるというメリットもあります。
「リダイレクト」の種類
リダイレクトには、主に2種類存在します。
301リダイレクト | 302リダイレクト | |
---|---|---|
概要 | WebサイトやページのURLを完全に変更する場合に行う処理 | Webサイトやページの転送が一時的に必要な場合に行う処理 |
SEO評価の引き継ぎ | できる | できない |
利用場面 |
|
|
.htaccessで設定できること
.htaccessでは以下のようなことが設定できます。
今回は.htaccessリダイレクトに焦点を当てて列挙していますが、.htaccessでは他にもさまざまな設定が可能です。
|
.htaccessリダイレクトの書き方とテンプレート
ここでは、.htaccessリダイレクトの書き方とテンプレートについて解説します。
今回は例として、301リダイレクトを利用します。(302リダイレクトにしたい場合は数字を入れ替えて記述)。ぜひ参考にしてみてください。
なお.htaccessファイルは、基本的にWebサイトを管理するサーバー内に保管されています。
サーバー内のファイルに直接記述を書き加えるか、.htaccessファイルを一度ダウンロードし、編集したファイルをサーバー内のファイルと入れ替えるなどして設定を行いましょう。
①ドメインを変更した場合
以下は、古いドメインから新しいドメインへとユーザーをリダイレクトさせる方法です。
【.htaccessの書き方】
RewriteEngine On RewriteCond %{http_host} ^www.old.com RewriteRule ^(.*) https://www.new.com/$1 [R=301,L] |
※「old.com」には古いドメイン、「new.com」には新しいドメインを記述します。
②ディレクトリを変更した場合
以下は、ディレクトリを変更した場合のリダイレクト方法です。
【.htaccessの書き方】
RewriteEngine on RewriteRule ^old(.*)$ /new$1 [R=301,L] |
※「domain.com/old/page.html」を「domain.com/new/page.html」に変更する場合
③ページURLを変更した場合
以下は、ページURLを変更した場合やページ統合した場合に利用されるリダイレクト方法です。
【.htaccessの書き方】
RewriteEngine on RewriteRule ^old.html$ /new.html [R=301,L] |
※「domain.com/old.html」を「domain.com/new.html」に変更する場合
④URLが大幅に変わる場合
以下は、ドメインやディレクトリ、ページなどURLが大幅に変更される場合に利用されるリダイレクト方法です。
【.htaccessの書き方】
RewriteEngine on RewriteRule https://www.old.com/old/old.html https://www.new.com/new/new.html [R=301,L] |
⑤特定のディレクトリを除外する場合
以下は、ディレクトリ「B」を「A」へのリダイレクトから除外するリダイレクト方法です。
【.htaccessの書き方】
RewriteEngine on RewriteBase / RewriteCond %{REQUEST_URI} !(^/B/) RewriteRule ^$ http:www.A.com [R=301,L] |
SEOで使われる.htaccessリダイレクト
実はSEOでよく用いられる.htaccessリダイレクトというものも存在します。
SEOに力を入れている運営者様はぜひ参考にしてみてください。
なおSEOのページ評価をリダイレクト先へ引き継ぎたい場合は、301リダイレクトを、引き継ぎたくない場合は、302リダイレクトを利用しましょう。(※書き方の例では、301リダイレクトの方法を記述しています)
①wwwあり・なしを統一する場合
wwwあり・なしでURLを統一することで、SEOのドメイン評価を向上させるリダイレクト方法です。
【.htaccessの書き方】
「wwwあり」でURLを統一する方法 | 「wwwなし」でURLを統一する方法 |
---|---|
RewriteEngine on RewriteCond %{HTTP_HOST} ^A\.com$ RewriteRule ^(.*)$ https://www.A.com/$1 [R=301,L] |
RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.A\.com$ RewriteRule ^(.*)$ https://A.com/$1 [R=301,L] |
②SSL導入する場合
SSL化を導入するために、URLを「http」から「https」にリダイレクトする方法です。
なおWebサイトやページのSSL化は、Googleが検索順位を決定する要素の1つと発表しています。
【Google検索セントラルブログ|ランキングシグナルとしての HTTPS】
【.htaccessの書き方】
RewriteEngine on RewriteCond %{ HTTPS} off RewriteRule ^(.*)$ https://%{ HTTP_HOST}%{REQUEST_URI} [R=301,L] |
③URLを統一する場合(URL正規化)
URLを統一するためのリダイレクト方法です。
|
上記の場合、①と②・③は別URLと認識され、②と③は同一URLと認識されます。
しかし、これでは、アクセスデータが統一されず、SEO評価が3つのサイトに分散してしまうため、リダイレクトで統一しましょう。
【最後に「/」で統一するパターン】
RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ https://domein.com/$1 [R=301,L] |
【最後を「index.html」で統一するパターン】
RewriteEngine on RewriteRule ^$ /index.html [R=301,L] |
.htaccessリダイレクトを設定する際の注意点
ここでは、.htaccessリダイレクトを設定する際の注意点について2点解説します。
①必ずファイルのバックアップを取る
リダイレクトをする前に、必ずファイルのバックアップを取りましょう。
万が一、リダイレクト設定で失敗してしまった際、ファイルやデータの破損、プログラムエラーなど、トラブルの原因に繋がります。
例えば、.htaccessファイルをアップロードする際、誤った内容で上書き保存してしまうケースです。
リダイレクトの設定後に自サイトが正しく表示されなくなるため、すぐ修正できるよう、事前にバックアップをとりましょう。
②無限ループに注意
リダイレクトの設定をする際は、無限ループに注意が必要です。
無限ループとは、リダイレクト転送を無限に繰り返してしまう状態のことです。
例えば、同じ.htaccessファイルにおいて「AからBへ転送」・「BからAへ転送」という記述をするとします。
すると転送先のページでまた転送が行われるという状態になります。
これでは無限にリダイレクトが続いてしまい、2ページ間で転送を繰り返すだけです。
設定時はコードの記述ミスをしないよう、必ず確認を取るようにしましょう。
「htaccess リダイレクト」を設定し、自サイトのマーケティングに役立てよう!
このページでは、「htaccess リダイレクト」に焦点を当て、その概要や重要性・メリット、できること、書き方、注意点などについて解説しました。
.htaccessリダイレクトは、Webサイトのメンテナンスやリニューアル、URLの変更時など、自サイトへ訪問してくれたユーザーを別ページへ誘導する重要な役割を担っています。
ユーザーからの満足度(UX)を低下させないためにも、.htaccessリダイレクト処理は設定できるようにしましょう。
「htaccess リダイレクト」やSEOでお悩みの場合は株式会社ipeにご相談ください。株式会社ipeではSEOでの大手クライアント実績多数!SEOを検討する際にはぜひ一度ご相談ください。
SEOに関するご相談があれば、ぜひipe(アイプ)へご相談ください。