URLの正規化カノニカル設定とhtaccessリダイレクト設定

URLの正規化カノニカル設定とhtaccessリダイレクト設定

SEOの必須項目 カノニカル設定とリダイレクト設定

#121 カノニカルとリダイレクト

WEB制作

canonical:カノニカルという設定をすることでサーチエンジンに正しいURLだと伝えることができます。 URLは1つだと思っていても、実はいろいろなURLでアクセスできるんです。 それをまとめて1つに集約することがカノニカル設定!

公開日:
最終更新日:

サイトマップサイトマップ

カノニカル設定でURLを正規化しよう!

カノニカルって言う言葉が良くわからないですよね。
「正規化」っていう意味です。

簡単に言うと、これが正規のURLだから、ほかに似たURLがあったとしても、ここで宣言したURLを「正規」のURLとして取り扱ってね、Googleさん。という意味です。

<link rel="canonical" href="https://www.start-point.net/" />

英訳的な意味だと「canonical:正典の、教会法に基づく、規準的な、標準的な」という意味になります。
教会法ってなんぞ?

カノニカルの設定方法
初見でキャノンシャルという読んでたのは内緒

カノニカルの記述場所は <head>~</head>の間

カノニカルタグは必ず<head>~</head>の中に書いてください。
<body>以下に記述してもGoogleは無視します。

これを存在するすべてのページに記載します。基本的に。
但し、サーチエンジンに向けての記述なので、クロールされる必要のないページには不要です。

見た目にはなんら影響のない、本当にサーチエンジンのためだけにあるタグです。

知らないと怖い URLの豆知識

多くの人は「URLなんて1個しかないから大丈夫だよ」と、他人事としてとらえると思うんですが、URLって実はいろいろな形があるんですよ。

1. wwwのありなし

サイトのURLって、私のサイトの場合は「https://www.start-point.net/」こうなってます。
これ、https://start-point.net/ これでもアクセスできるんですよ。
※私のサイトはリダイレクト設定でwwwなしでもwwwありに転送されます。

ドメインの設定にもよるんですが、ありなしどちらも内容は同じです。
サーバーの中に収められたHTMLデータは同一のものを読み込んでいますので。

ここからが問題。
物理的には別のURL扱いなんです。

https://www.start-point.net/ と
https://start-point.net/

wwwのありと、なし、どっちが正解かといえば、Google側からすると「知らんがな」となるわけですね。
それを避けるために、こっちが正規のURLですよー、と宣言するのがカノニカル役割です。

私はwwwありを正規化しているんですけど、ありでもなしでも、差はありません。
好きなほうを正規化して大丈夫。
なんですが、他サイトなどからリンクをされている場合、リンクされているURLを正規化する方がベターです。

wwwありなしはお好みで
昔はwwwがあるのが当たり前だったんだ

リダイレクト設定でSEO上のページの価値は引き継げると言われますが、URL変更が起きるとマイナスになることはあってもプラスになることはほぼありません。

wwwはワールドワイドウェッブの略称なんだよ。

2. htttps と http の違い

最近じゃSSL化が当たり前で、SSL対応してないとブラウザがまともに表示してくれないレベルになってきましたよね。
これもhttpsとhttpでは別扱いになります。

SSLの暗号化
https の s は SSLの s

SSLとはSecure Sockets Layer(セキュリティー ソケット レイヤー)の略で暗号化技術です。

3. / のありなし

URLの最後に「/(スラッシュ)」がついているかいないか。
これもありなしで、同じ内容が表示されます。

一説によると、これはあってもなくてもGoogleは同一内容として扱ってくれるらしいですが、これも正規化しておくほうが精神衛生上よろしいのではないかと思います。

4. index.html(.php等も同様)のありなし

https://www.start-point.net/と、https://www.start-point.net/index.htmlこれも同じ内容が表示されます。

index.html は省略ができるので、index.htmlを省略すると、ディレクトリ内にあるindex.htmlを表示します。

indexの省略
indexファイルは必ず設置しましょう

ちなみに、index.htmlとindex.phpの両方をサーバーにUPしている場合、別ファイル扱いになりますのでご注意を。
どちらが表示されるかは、サイトの優先順位によって決まります。

記事の後半で拡張子の優先順位の設定方法を解説しています。

5. パラメーターの取り扱い

パラメーターというまたややこしいものが出てきました。
URLの後ろに「?AAA=BBB」というものを付けて、色々便利なことができる仕組みなんですが、これのありなしも別扱いになります。

ブログでよく使われるのは、ページ送りです。
カテゴリページなど記事数が多い場合、「https://www.start-point.net/blog/?page=2」のように使われていることが多いです。

これを正規化するべきか否かは、いろいろ議論があります。
ページはあるけど、同一のページとして取り扱いたいときは、パラメーターなしで正規化するのが良いと思います。

ページ送りで内容が違うから、別ページとして取り扱いときは正規化しなくてもよい(パラメーター付きで正規化する)と、これはそのページの内容に合わせてでいいんじゃないかと思います。

私は、今のところ、ページ送りはパラメータなしで正規化してます。

ページ送りなどではなく、広告や計測目的のパラメーターで、内容が同一の表示だけど、パラメーターがついているものは正規化した方が良いです。

正規化 + htaccess リダイレクト設定

カノニカルの指定で正規化の宣言はできるんですが、色々あるURLでもアクセスできてしまうので、強制的に自分が見せたいページに転送設定することを「リダイレクト設定」と言います。

これは、設定まちがえるとやばいことになるので、自信のない方はやらない方がいいんですが、.htaccessというファイルを作ることで転送設定が可能です。

自分で作っていなくてもワードプレスや、ベーシック認証などですでに.htaccessが作られている場合があります。

それを知らずに上書きしてしまうと、最悪サイト表示されなくなる可能性があります。
また、上書きしたファイルのバックアップがない場合、最悪修復不可能な可能性まであるので、必ず作業前に.htacessが存在するかどうかを確認してください。

SSLの暗号化
htaccessは最新の注意を払って設定する

.htaccessを使ったURL正規化

まず、サーバーによってはそもそも.htaccessが使えない場合もありますので、利用しているサーバーが.htaccessが使えるかどうかを確認してください。

加えて、紹介する内容をコピペして使ってもうまくいかない場合もあります。
WEBサーバーのOSの違いとかまぁいろいろあります。

.htaccessファイルはFTPソフトを使ってサーバーのドメイン直下にUPします。
この言葉の意味が分からない方は、設定しない方がいいです。

さらに加えて、なにか不具合が起きても責任は負えませんので、あらかじめご了承ください。
余計な文字が入ったり、足りなかったりするだけで、サーバーエラーが簡単に起きますから、自己責任でね。

wwwありに統一し、URLの最後を/ありにリダイレクト

wwwなしでアクセスされた際に、wwwありのドメインに転送し、最後が/で終わるリダイレクト設定です。

スラッシュがあってもなくても、問題ないと思いますが、私のA型気質がでて、スラッシュありに統一するためのリダイレクト設定です。

start-point.netの箇所は自分のドメインに変更してください。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(start-point\.net)(:80)? [NC]
RewriteRule ^(.*) https://www.start-point.net/$1 [R=301,L]	

httpsへのリダイレクト設定

htttpでアクセスされた場合にhttpsに転送する記述です。
//以降がグレーになってますが、そこも必要ですのでコピペするときは全部丸っとコピペしてください!

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

最後の[R,L]は[R=301,L]にすると301リダイレクトという方式で恒久的にリダイレクトします、という宣言になるんですが、なぜかこれを[R=301,L]にすると私の環境ではエラーがでるので[R,L]としています。

index.htmlのリダイレクト

私のサイトは.phpで作っているので、index.phpのリダイレクトを設定していますが、.htmlで作っている場合は、.htmlに書き換えてください。(2行目)
また、start-point.netの箇所は自分のドメインに変更してください。

RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ https://www.start-point.net/$1 [R=301,L]

index.〇〇の優先順位を指定

これはリダイレクト設定じゃないんですが、htaccessの話をしたのでついでに書いておきます。

DirectoryIndex index.php index.html index.htm

index.〇〇の表示の優先順位の指定です。
左にあるものが優先順位の高い拡張子になります。

上記設定の場合、index.〇〇を省略した、ディレクトリ終わりでのURLの優先順位設定です。

https://www.start-point.net/ にアクセスした場合、最優先がindex.php なければ index.html それもなければ index.htmを表示します。
なにもなければ 404 not found のエラーになります。

混在させないのが一番なんですけど、私は昔.htmlでサイトを作っていて、PHPを覚えたころから.phpで作りだしので保険的な意味合いで設定しております。

.html でもphpを動かす記述

ついでのついでに、.htmlのファイルでもPHPが動くようにする設定も紹介しておきます

AddHandler php7.3-script .htm .html

php7.3というのはPHPのバージョン指定です。環境に合わせて書き換えてください。

拡張子が.htmでも、.htmlでもPHPを動かすための記述です。

サーバーキャッシュの保持期間を指定する方法

さらに、サーバーのキャッシュを指定する方法も書いちゃいましょう。
Googleのスピードテストなどでキャッシュ長くしろと言われたらここを設定します。

# BEGIN Browser Cache
<ifModule mod_expires.c>
 ExpiresActive On
 ExpiresByType image/png "access plus 1 months"
 ExpiresByType image/jpeg "access plus 1 months"
 ExpiresByType image/gif "access plus 1 months"
 ExpiresByType text/css "access plus 1 months"
 ExpiresByType image/svg+xml "access plus 1 year"
 ExpiresByType application/x-javascript "access plus 1 months"
 ExpiresByType text/js "access plus 1 months"
 ExpiresByType text/javascript "access plus 1 months"
 ExpiresByType application/javascript "access plus 1 months"
</ifModule>
# END Browser Cache

色々な拡張子のキャッシュ期間を明示する書き方で、私は大体1ヵ月を指定しています。
image/svg+xmlだけ1年になってますね。
SVGファイルはロゴとかそういうたぐいのものなので、めったに書き換えないから1年にしています。

URLの正規化カノニカルとリダイレクトのまとめ

カノニカルの話をしていたら、.htaccessのリダイレクト設定は避けては通れない道ですね。
ほんとに、ちょっとしたミスでサーバーエラーがおきますので、作業をするときは、編集前の.htaccessファイルをコピーして、アクセスの少ない時間帯でチャレンジすることをオススメします。

ローカルで試してうまくいっても、本番サーバーにUPするとエラーを吐くことは普通にありますので、ご注意ください。

全角のスペースが入ったり、スペルミス、転送設定の間違いなど、エラーの原因はいろいろあります。
転送のループになることもありますから、細心の注意が必要です。

私も何度となく、エラーを出しまくってきました。.htaccessの設定ミスで。

エラーが出たら落ち着いて、編集前の状態に戻すことが手っ取り早い解決策です。
(元に戻しただけで何も変わらないんですけどね、それだと)

本当はOGPタグの話などもしようと思っていたのですが、ややこしい話を長々と書いてしまったので、OGPの話は次回にします。
次回もお楽しみに!

記事内で紹介している商品リスト
(価格はAmazon参考価格)

これからのSEO内部対策 本格講座

1,980円(税込)

これからのSEO内部対策 本格講座

現場のプロから学ぶ SEO技術バイブル(特典PDF付き)

3,278円(税込)

現場のプロから学ぶ SEO技術バイブル(特典PDF付き)

UP-BLOG 申込みが止まらないブログの作り方 (マーチャントブックス)

2,585円(税込)

UP-BLOG 申込みが止まらないブログの作り方 (マーチャントブックス)

Webプロジェクトを成功に導く 戦略的SEO思考

1,980円(税込)

Webプロジェクトを成功に導く 戦略的SEO思考

いちばんやさしい新しいSEOの教本 第2版 人気講師が教える検索に強いサイトの作り方[MFI対応] (「いちばんやさしい教本」シリーズ)

1,738円(税込)

いちばんやさしい新しいSEOの教本 第2版 人気講師が教える検索に強いサイトの作り方[MFI対応] (「いちばんやさしい教本」シリーズ)

10年つかえるSEOの基本

1,628円(税込)

10年つかえるSEOの基本

文芸オタクの私が教える バズる文章教室 (サンクチュアリ出版)

1,540円(税込)

文芸オタクの私が教える バズる文章教室 (サンクチュアリ出版)

カノニカルとリダイレクトの関連ページ

SEOキーワード選定

SEO キーワード選定の方法を考察してみた

SEOは結構頑張っていますが、キーワード選定という手法をあまり深く考えたことがなかったので深く考えてみました。

GTM イベントトラッキング

GTMを使ってイベント計測を簡単に行う方法

グーグルタグマネージャーを使ってイベントトラッキングを計測する方法の手順を解説。何がクリックされたかを知ることは大事です

OGP設定

OGP設定をしてSNSからの流入とCTRを改善する

シェアするとき、シェアしてもらうときに最適な形で紹介したいとなるとOGP設定をしっかり設定することが重要です

Googleアップデート対策

Googleコアアップデートで順位が下がったときにやるべきこと

Googleのアルゴリズム変更によるGoogleコアアップデートでSERPsの順位変動が起きたときにやったこと

構造化データとパンくずリスト

構造化データで作るパンくずリストとSEO

SEO上必須ともいえる構造化データ化されたパンくずリストの解説と、ユーザー目線で考えるパンくずリストの価値について

SEO titleとh

SEOで重要なtitleタグとhタグの使い方

SEOの内部構造の基本であるTitleタグとHタグの使い方と自分の考えを書きました。 基本だからこそ重要な要素

リンク構造

ブログのアクセスアップに欠かせないSEO的リンク構造の考え方

SEOのリンク構造を効果的に作るための情報をまとめました。 可能な限り情報の出どころのリンクも用意しております。

GA4カスタムイベント

GA4 GTMを使ったカスタムイベントの設定方法

GA4のカスタムイベントをGTMを使い設定する方法です。 イベント、パラメータ、カスタムディメンションの解説記事です。

GTMの導入

グーグルタグマネージャーの導入手順とメリットについて

Google Tag Manager 通称「GTM」と呼ばれる無料で使えるタグを管理するツールの説明と導入手順の解説

SNSでこの記事をシェアできます

ブログ デイリーアクセスランキング

SVG背景
1位

SVG背景

SVG背景を覚えたらborderで背景画像を作るのが馬鹿らしくなります。 それくらい簡単で汎用性の高い方法です。

カー用品
2位

カー用品

スマホをカーナビとして使うと熱さで充電ができなくなるので、熱対策と1年間使って外れることがなかったスマホホルダーの紹介。

カレンダー
3位

カレンダー

forとifとforeachがメインのPHPによるカレンダーの作り方です。 祝日設定がちょっとめんどくさいんですよね。

ノートPCスタンド
4位

ノートPCスタンド

ノートパソコンを横にしまうと結構な専有面積があるのですが、立てて収納できればわずか数cmで使えるので本当に快適です!

MusicBeeのレイアウト変更方法
5位

MusicBeeのレイアウト変更方法

MusicBee 3.1のレイアウトをデフォルトの状態から、自分好みのレイアウト設定に変更する方法を写真付きで紹介しています。

AM-AX1800HP
6位

AM-AX1800HP

Wifi6は今後スタンダードになるので先行投資で導入しましたが、速度改善の効果が皆無でちょっとしょんぼりです。

ロジクール マウス
7位

ロジクール マウス

PCを操作するのに必要なマウス。高級品でも安いマウスでも操作をするという点においては大差はありません。違いがあるのは操作に対する満足感。

c920n
8位

c920n

ロジクールの評判の良かったWEBカメラ「c920n」を購入し、ノートPCとデスクトップの両方で使えるようにしました!

MusiceBee
9位

MusiceBee

PCで音楽の再生と管理をするならiTunseよりもMusicBeeがオススメです。軽くて早くて便利で使いやすい。

ツタヤディスカス
10位

ツタヤディスカス

定額レンタル宅配CD・DVDサービスのツタヤディスカスを利用してみました。 1ヵ月で20枚レンタルしました!1枚93円!

カテゴリ一覧

オススメ商品レビュー

オススメ商品レビュー

世の中にある比較サイトや、いかがでしたか系サイトが嫌いなんです。使ってないのにえらそうなこと言うなと。なので体験談です。

WEB制作

WEB制作

WEBサイトを作れますと一言に言っても色々な技術があるわけですよ。アウトプットの形は一緒でもいろいろこだわりがあるんです。

カメラ

カメラ

2018年4月に購入したソニーのミラーレス一眼「α7Ⅲ」に関連する記事一覧ページです。 作例集やカメラグッズレビューなど。

美味しいもの

美味しいもの

食に関してはあまりこだわりがないんですけどね、こだわりがない分美味しいと思ったものは本当においしいと思ったものなんですよ

Amazonプライム動画

Amazonプライム動画

Amazonプライム会員なら無料で利用できるAmazonプライム動画から、いろいろな動画をみたレビュー記事のまとめページ

旅LOG

旅LOG

家族旅行やおでかけした際の旅ブログです。夏休みの家族旅行(4人家族)で訪れた観光名所の感想などを記しています。

プロフィール

プロフィール

Start-Point.netの管理人のプロフィール紹介を兼ねた、自分の中のルールや決め事やエピソードなでお書いていきます

日記

日記

日記と言っても色々な日記があるわけで、記録的な日記や心理描写を色濃く描いた日記などをまとめたページです。

thanks

thanks

自分を表現することって意外と難しいんですよね。照れがあったり、間違ったこといってないかとよくわからない何かと戦ったりして。

記事内で紹介している商品

これからのSEO内部対策 本格講座

1,980
(税込)