ドメインの統一(wwwあり/なし)と正規化設定

ドメインの統一(wwwあり/なし)と正規化設定

ドメイン統一の重要性

ウェブサイトを運営する上で、ドメインの統一は非常に重要なSEO(検索エンジン最適化)およびユーザビリティ(使いやすさ)の観点から不可欠な要素です。具体的には、「www」が付いているドメイン(例: www.example.com)と「www」が付いていないドメイン(例: example.com)のどちらかに統一し、もう一方をリダイレクト(転送)する設定を行います。

なぜドメイン統一が必要なのでしょうか。検索エンジンは、「www.example.com」と「example.com」をそれぞれ別のウェブサイトとして認識してしまう可能性があります。これにより、本来一つのサイトであるはずなのに、検索結果上では重複したコンテンツとして扱われ、検索順位が分散したり、評価が低下したりするリスクが生じます。

また、ユーザーにとっても、どちらのURLでアクセスしても同じコンテンツが表示されるべきです。URLが統一されていないと、ユーザーは混乱し、ブックマークや共有する際にどちらのURLを使うべきか迷う可能性があります。これは、サイトの信頼性やユーザーエクスペリエンスを損なう要因となります。

さらに、SNSでの共有や外部サイトからのリンクにおいても、URLが統一されている方が、被リンクの評価が分散せずに集約されるため、SEO効果が高まります。

「wwwあり」と「wwwなし」の選択

ドメイン統一を行うにあたり、「wwwあり」と「wwwなし」のどちらを選択するかは、技術的な優位性というよりは、どちらかに統一することが目的です。一般的には、どちらを選んでもSEO上の大きな差はないとされています。

しかし、過去のSEOの常識や、ウェブサイトの規模、将来的な拡張性などを考慮して選択することもあります。

  • 「wwwなし」を選択する理由:

    • URLが短くなるため、入力しやすい、覚えやすいというメリットがあります。
    • 近年、「wwwなし」を推奨する声も増えています。
  • 「wwwあり」を選択する理由:

    • サブドメイン(例: blog.example.com)を将来的に複数運用する計画がある場合、「www」をルートドメインとして扱い、他のサブドメインと区別しやすくなります。
    • 歴史的に「wwwあり」が一般的であったため、既存のシステムや設定との互換性を考慮する場合があります。

どちらを選択するにしても、一度決めたら変更しないことが重要です。やむを得ず変更する場合は、影響を最小限に抑えるための慎重な対応が必要です。

正規化設定の実装方法

ドメイン統一を実現するための最も一般的な方法は、HTTPリダイレクトの設定です。これは、一方のURLにアクセスがあった場合に、もう一方のURLに自動的に転送する仕組みです。主に以下の方法が用いられます。

1. .htaccessファイルによるリダイレクト (Apacheサーバーの場合)

Apacheサーバーを使用している場合、ウェブサイトのルートディレクトリに配置されている.htaccessファイルを編集することでリダイレクトを設定できます。

「wwwなし」を「wwwあり」に統一する場合の例:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

「wwwあり」を「wwwなし」に統一する場合の例:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

このコードでは、RewriteEngine Onでリライトエンジンを有効にし、RewriteCondで条件を指定します。%{HTTP_HOST}はアクセスされたホスト名を取得し、!^www. [NC]は「www.」で始まっていない場合(大文字小文字を区別しない)という条件です。RewriteRuleは、条件に合致した場合にhttp://www.example.com/$1(またはhttp://%1/$1)へR=301(恒久的なリダイレクト)で転送します。[L]は、このルールが適用されたらそれ以降のルールは適用しないことを意味します。

注意点: example.comの部分はご自身のドメイン名に置き換えてください。また、.htaccessファイルは、設定ミスがサイト全体の表示に影響を与える可能性があるため、編集前に必ずバックアップを取るようにしてください。

2. Nginxの設定ファイルによるリダイレクト (Nginxサーバーの場合)

Nginxサーバーを使用している場合は、Nginxの設定ファイル(通常はnginx.conf/etc/nginx/sites-available/内のファイル)を編集します。

「wwwなし」を「wwwあり」に統一する場合の例:

server {
    listen 80;
    server_name example.com;
    return 301 http://www.example.com$request_uri;
}

server {
    listen 80;
    server_name www.example.com;
    # ... 通常のサイト設定 ...
}

「wwwあり」を「wwwなし」に統一する場合の例:

server {
    listen 80;
    server_name www.example.com;
    return 301 http://example.com$request_uri;
}

server {
    listen 80;
    server_name example.com;
    # ... 通常のサイト設定 ...
}

Nginxでは、serverブロックでserver_nameを指定し、return 301で恒久的なリダイレクトを指定します。$request_uriは、リクエストされたURI(パスとクエリ文字列)全体を保持するため、指定したドメインへのリダイレクト時に元のパスも引き継ぎます。

3. Webサーバーの設定 (IISなど)

IISなどの他のWebサーバーを使用している場合は、それぞれのサーバー管理画面や設定ファイルでリダイレクト設定を行うことになります。多くの場合、GUI操作で簡単に設定できます。

4. CDN (Content Delivery Network) やホスティングサービスの機能

CloudflareなどのCDNサービスや、多くのレンタルサーバーでは、管理画面からドメインの統一(wwwあり/なしの選択とリダイレクト設定)を簡単に行える機能が提供されています。これらのサービスを利用している場合は、そちらの機能を利用するのが最も手軽で安全な方法です。

検索エンジンへの通知(Search Console)

ドメイン統一のためにリダイレクト設定を行った後、Google Search Console(旧ウェブマスターツール)で、どちらのURLをプライマリ(正規)なURLとしてGoogleに認識させたいかを設定することが推奨されています。

過去にはSearch Consoleに「サイトのURL」という設定項目があり、ここで「wwwあり」または「wwwなし」を選択できましたが、現在はこの機能は廃止されています。しかし、Googleはリダイレクト設定(特に301リダイレクト)を適切に認識し、自動的に正規URLを判断します。

ただし、設定が正しく行われているかを確認するために、以下の点に注意しましょう。

  • 301リダイレクトの使用: 検索エンジンに対して「恒久的に移動した」ことを伝える301リダイレクトを使用することが重要です。一時的なリダイレクト(302リダイレクト)を使用すると、SEO評価が正しく引き継がれない可能性があります。
  • Sitemaps.xmlの更新: サイトマップsitemaps.xmlに記載されているURLも、統一した正規URLに統一しておきましょう。
  • rel="canonical"タグ: ページ内のタグも、正規URLを指すように設定しておくと、検索エンジンへの伝達をより確実にする助けとなります。
  • robots.txt: robots.txtファイルで、リダイレクトされる側のURLへのクローラーのアクセスを禁止しないように注意してください。

SSL化との関係

近年、ウェブサイトの常時SSL化(HTTPS化)は必須となっています。ドメイン統一とSSL化は、それぞれ独立した設定ですが、組み合わせて行うことでより強固なセキュリティとSEO効果が得られます。

例えば、「wwwなし」のHTTPサイト(http://example.com)を「wwwあり」のHTTPSサイト(https://www.example.com)に統一する場合、以下のようなリダイレクトチェーンが発生します。

  1. http://example.comhttps://example.com (HTTP→HTTPSリダイレクト)
  2. https://example.comhttps://www.example.com (wwwなし→wwwありリダイレクト)

これらのリダイレクトは、サーバー設定でまとめて処理することができます。例えば、Apacheの.htaccessファイルでは、以下のように記述できます。

RewriteEngine On

# HTTPをHTTPSにリダイレクト
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# wwwなしをwwwありにリダイレクト (HTTPS化後)
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

このように、HTTPからHTTPSへのリダイレクトと、wwwあり/なしのリダイレクトを組み合わせることで、ユーザーがどのURLでアクセスしても、常に統一された正規URL(この例ではhttps://www.example.com)にたどり着くように設定します。

SSL証明書を導入する際には、ドメイン名(example.com)とwww.example.comの両方に対応した証明書(マルチドメイン証明書やワイルドカード証明書)を取得するか、あるいはwwwあり/なしのどちらか一方のドメインのみでSSL化し、もう一方をリダイレクトするという構成を検討する必要があります。

まとめ

ドメインの統一(wwwあり/なし)と正規化設定は、ウェブサイトのSEOパフォーマンスとユーザーエクスペリエンスを向上させるための基本的ながら非常に重要な対策です。検索エンジンからの評価を分散させず、ユーザーを混乱させないために、どちらかのURLに統一し、301リダイレクトを正しく設定することが不可欠です。

実装方法としては、Webサーバーの設定ファイル(.htaccessやNginx設定ファイル)を直接編集する方法や、CDNやホスティングサービスの提供する機能を利用する方法があります。SSL化との連携も考慮し、HTTP→HTTPS、そしてwwwあり/なしの統一を一つのリダイレクトチェーンで処理できるように設定することで、より洗練されたURL管理が可能になります。

設定後は、Google Search Consoleなどを活用して、設定が正しく反映されているかを確認し、必要に応じてサイトマップやrel="canonical"タグの更新も行いましょう。これらの施策を適切に実施することで、検索エンジンからの信頼を得やすくなり、より多くのユーザーにウェブサイトを見つけてもらうための土台が築かれます。

コメント

タイトルとURLをコピーしました