URL正規化の方法【.htaccessの書き方など3種類】

URL正規化の方法
更新日:2021年4月5日

URL正規化とは?

URL正規化とは、重複しているURLを1つのURLに統一することです。

例えば、「https://example.com/」というURLはサイトのトップページを指していますが、URLを統一していないと「https://www.example.com/」や「https://example.com/index.html」といったURLでも同じトップページにアクセスすることができます。
これらは一見同じ内容のページに見えますが、Googleなどの検索エンジンはそれぞれ違うページと認識します。

このような、URLは違うけれど同じ内容のページが複数あることを「重複コンテンツ」と呼び、SEO的にマイナスの評価を受ける可能性があります。
また、閲覧者が正しいページなのかわからなくなったり、リンクが分散してしまうなどの様々な問題があるため、人間の目線からみても重複コンテンツは良くありません。

そのため、検索エンジンに「このURLが正規のURLだよ」と伝え、URLを1つに統一する必要があるということです。

重複しているURLの例

重複しているURLとして、独自ドメインのサイトで必ず発生するのは以下の3つです。
これら以外にも、PC用とモバイル用ページでURLが違うなどのパターンもあります。

wwwあり・wwwなし
https://www.example.com/
https://example.com/
index.htmlあり・index.htmlなし

https://example.com/index.html
https://example.com/

※サイト構成によって、index.php や index.cgiになる場合もあります。

SSLあり(https)・SSLなし(http)
https://example.com/
http://example.com/

URL正規化の方法

URLを正規化するには、主に以下の3つの方法があります。
確実にURLを伝えるためにも、すべての方法で正規化しておくことをおすすめします

  • .htaccessで正規URLに301リダイレクトする
  • rel="canonical"に正規URLを指定する
  • サイトマップを正規URLで作成する

これらの方法で指定したURLが検索エンジンに評価され、検索ページにも表示されることになります。
後でURLの変更をすると検索順位に影響が出てしまうので、正規化するURLは慎重に選ぶようにしてください。

通常は、「index.htmlなし」「SSLあり(https)」を正規URLにしますが、「wwwあり・なし」については好みで決めて問題ありません。

※コードをコピペする際は、「example.com」の箇所をご自身のサイトURLに変更してください。

.htaccessで正規URLに301リダイレクトする

.htaccessとは、Webサーバーの挙動を決めることができるファイルのことです。
.htaccessファイルに301リダイレクト(恒久的に移動)の指示を書くことで、正規ではないURLにアクセスしてきたユーザーを正規URLに移動させることができ、検索エンジンにも正規URLを伝えることができます。

.htaccessファイルは、レンタルサーバーのindex.htmlがある場所にあります。
FTPソフトでレンタルサーバーからダウンロードし、メモ帳などのテキストエディタで編集した後、同じ場所にアップロードしなおしてください。

※.htaccessは挙動にかかわる重要なファイルなので、必ずバックアップをとり、記入間違いのないように注意してください。

※.htaccessのルールとして、最後の行を必ず改行(空白の行)にしてください。

※メモ帳で.htaccessの編集をすると「.htaccess.txt」というファイルになってしまうので、FTPソフトでレンタルサーバーにアップロードした後、FTPソフト上で「.txt」の部分を削除してください。

wwwありにリダイレクト

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

wwwなしにリダイレクト

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

index.htmlなしにリダイレクト

index.phpの場合は、htmlの箇所をphpに変更してください。

RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://example.com/$1 [R=301,L]

SSLあり(https)にリダイレクト

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

(例)wwwなし、index.htmlなし、SSLあり(https)にまとめて設定

「RewriteEngine on」は最初の1つだけにして、ひとまとめにすることができます。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://example.com/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

rel="canonical"に正規URLを指定する

<link>タグのrel="canonical"属性に正規URLを指定することで、検索エンジンに正規URLを伝えることができます。
URLを指定する方法は、<head>内に下記のコードを追加するだけです。

<link rel="canonical" href="https://example.com/">
canonicalにURLを指定する

サイトマップを正規URLで作成する

Googleなどの検索エンジンに送信するサイトマップ(sitemap.xmlなど)から正規URLを伝える方法です。
サイトマップを送信すると、検索エンジンにサイト内のページを伝えることができますが、間違った情報を伝えないためにも正規URLで作成する必要があります。

サイトマップの作成には、sitemap.xml Editorというサイトがおすすめです。
入力フォームに正規URLを入力すれば、サイト内のリンクからページを自動で取得し、「sitemap.xml」を作成してくれます。

sitemap.xml Editorの使い方

作成したサイトマップは、レンタルサーバーのindex.htmlがある場所にアップロードし、Google Search Consoleから送信してください

Search Consoleにサイトマップを送信する

URL正規化の確認方法

検索エンジンが正規URLを認識しているか確認するには、Google Search Consoleの「URL検査ツール」を使います。
メニューにある「URL検査ツール」を選択してURLを入力し、カバレッジをクリックすれば確認することができます。

URL正規化ができているか確認する

「ユーザーが指定した正規URL」が正規化で指定したURLに、「Googleが選択した正規URL」が検査対象のURLになっていればちゃんと認識されています。

無料ブログや無料ホームページでURL正規化ができない場合

無料レンタルブログや無料ホームページサービスでは、.htaccessやheadタグの編集に対応していない場合が多く、URL正規化を完全にはできない可能性があります。
ヘルプなどを見ても解決できない場合は、Google Search Consoleに正規URLのみを登録し、内部リンクやSNSのリンクを正規URLにリンクするという方法で対処できます。

もう一点気になることとして、無料ブログからWordPressに引っ越したいとなった時などに、301リダイレクトに対応していないとサイトの評価を受け継ぐことができません。
たくさんの人に見にきてもらえるサイト・ブログを目指しているのであれば、最初からレンタルサーバーで始めることをおすすめします。

レンタルサーバーの詳細と比較:レンタルサーバー比較|料金と機能の一覧

URL正規化の注意点

URL正規化の方法はひとつずつ見ていけば難しくないのですが、SEOに直接影響する部分でもあるため、きちんと確認しながら行う必要があります。
繰り返しになることもありますが、URL正規化の注意点をまとめておきます。

  • 指定する正規URLをすべての方法で統一し、間違いのないように確認してください。
  • URLを後で変更するのはSEO的に良くないので、正規にするURLは慎重に選んでください。
  • .htaccessファイルは必ずパックアップを取り、編集後は正規ではないURLにアクセスしてリダイレクトできているかを確認してください。
  • サイト内のリンクも正規URLにリンクするようにしてください。
totopアイコン