この記事について
本記事は、2023年1月に実施した社内勉強会の資料をもとに、社外向けに再編集したものです。
記載している内容は当時の情報に基づいており、最新の仕様やベストプラクティスとは異なる可能性があります。
実装にあたっては、必ず最新の公式ドキュメントをご確認ください。
はじめに
本記事では、SEOを意識して取り組んでおくとよいポイントをいくつか紹介します。
URLのユニーク化
同一のURLで異なるコンテンツを表示しないようにしましょう。
もし同一のURLで複数の異なる内容を出してしまうと、検索エンジンのクローラーが正しく理解できず、ページが正当に評価されにくくなります。
例として、絞り込み検索機能を持つページでは、カテゴリごとに表示内容が変わるのにもかかわらず、同一のURLを使ってしまうケースがあります。
カテゴリ | コンテンツ | URL |
---|---|---|
Tシャツ | Tシャツの一覧 | https://www.example.com/search.php |
パーカー | パーカーの一覧 | https://www.example.com/search.php |
セーター | セーターの一覧 | https://www.example.com/search.php |
下記のように、静的でユニークなURLが理想です。
カテゴリ | コンテンツ | URL |
---|---|---|
Tシャツ | Tシャツの一覧 | https://www.example.com/search/t-shirt/ |
パーカー | パーカーの一覧 | https://www.example.com/search/parka/ |
セーター | セーターの一覧 | https://www.example.com/search/sweater/ |
URLの正規化
複数URLに同一のコンテンツが表示される場合、重複コンテンツとして扱われ、評価の分散やクローラビリティの低下などデメリットが多数存在します。
そのため、正規ページを決めて検索エンジンに伝える「正規化」が必要です。
正規化には、「301リダイレクト」と「canonical設定」の2種類ありますが、Googleは基本的に301リダイレクトを推奨しており、正規ページへリダイレクトさせたくない場合にcanonical設定を利用します。
301リダイレクト
サーバー側で設定し、正規ページへ転送する方法です。
Apacheの.htaccess
やnginxの設定ファイル、PHPなどのアプリケーションからも設定できます。
canonical設定
HTMLの<head>
タグ内で、正規ページを示す方法です。
<head>
<link rel="canonical" href="https://www.example.com/new/">
</head>
正規化例
重複コンテンツURL | 正規ページ | 正規化方法 |
---|---|---|
http ↔ https | https | 301リダイレクト |
ドメイン名のwww有無 | どちらでも可 | 301リダイレクト |
URLにindexファイル名有無 | indexファイル名無URL | 301リダイレクト |
URLに末尾スラッシュ有無 | どちらでも可 | 301リダイレクト |
URLパラメータ有無 | URLパラメータ無しURL | canonical |
別URL階層 | 検索結果の上位表示URL | 301リダイレクト |
title/descriptionのユニーク化
title
やdescription
もコンテンツの一部として扱われるため、複数のURLで重複していると重複コンテンツと見なされます。
また、これらは検索結果に表示される際にユーザーが最初に目にする部分でもあるため、重複しているとページ内容が正しく伝わらず、ユーザー体験の低下につながります。
特にページネーションがある場合は、各ページでユニークになるよう注意が必要です。