【SEO】URLの正規化、www有無・httpとhttpsの統一方法。エックスサーバー設定例有り
SEOのひとつに、サイトのURLの正規化というものがあります。
サーバーによって初期設定では同じ内容で別のURLが混在してしまっているので、wwwの有無、SSL接続の有無を統一することを言います。
- http://サイト名.com
- https://サイト名.com
- http://www.サイト名.com
- https://www.サイト名.com
上記のように1つのページに対していくつものURLが存在する状態のままだと、検索エンジン評価が分散してしまい、SEOに悪影響となってしまいます。
URLの正規化とはこういった同じ内容のページのURLを統一することを指します。
今回はこのURLの正規化の方法について、解説していきたいと思いますので、ご参考頂ければ幸いです。
URLの正規化の方法
URLの正規化はサーバーによって方法が微妙に異なります。
基本的には「.htaccess」というファイルを使って、ユーザーからのアクセスを正しいアドレスへリダイレクトするように制御します。
エックスサーバーの場合のURL正規化の方法
ドメインの公開フォルダ上の「.htaccess」ファイルを直接編集も出来ますが、文字コードの決まりなどがあるので、細心の注意が必要です。
エックスサーバーの場合はコントロールパネルから「.htaccess編集」のメニュー項目があるのでそちらから行いましょう。
.htaccess編集メニューに入って、編集したいドメインを選択します。
すると編集画面になるので、「使用前のご注意」というタブの内容をよくご確認の上で「.htaccess編集」のタブへ切り替えます。
www無し、httpsへの統一の場合、こちらの編集エリアに以下のような記述を追加することで対応出来ます。
.htaccess
<IfModule mod_rewrite.c> RewriteEngine on RewriteBase / # wwwありの場合、なしにリダイレクト RewriteCond %{HTTP_HOST} ^(www.ドメイン前半\.ドメイン後半) [NC] RewriteRule ^(.*)$ https://ドメイン前後半/$1 [R=301,L] # httpでのアクセスはhttpsにリダイレクト RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </IfModule>
ドメインの正式な呼び方についてはちょっとややこしいので上記例では「.com」や「.co.jp」などの部分を「ドメイン後半」、それまでのサイト独自の部分について「ドメイン前半」と書いています。
このドメイン部分をご自身のサイトに合わせて設定してください。
www有りに統一する場合は以下のような記述になります。
.htaccess
# wwwありの場合、なしにリダイレクト RewriteCond %{HTTP_HOST} ^(www.ドメイン前半\.ドメイン後半) [NC] RewriteRule ^(.*)$ https://ドメイン前後半/$1 [R=301,L]
# ↑この部分を以下のように変更↓
# wwwなしの場合、ありにリダイレクト RewriteCond %{HTTP_HOST} ^(ドメイン前半\.ドメイン後半) [NC] RewriteRule ^(.*)$ https://www.ドメイン前後半/$1 [R=301,L]
その他の記述
最初から以下のような記述があった場合は、そのまま置いておくのがよいでしょう。
.htaccess
SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode=off SetEnvIf Request_URI ".*" Ngx_Cache_StaticMode
SSL設定
また、httpsへの対応、サイトのSSL化についてまだの場合は、別途「SSL設定」のメニュー項目から設定しておく必要があります。
URLを正規化してしっかりSEO対策
URLの正規化という言葉がなんだかスッと分かりづらいですが、必ず必要なSEOの基礎対応の一つです。
サイトのアドレスを統一してしっかりSEO対策しておきましょう。
▼htaccessの書き方など私も不慣れですが、こういったサーバー知識に目を通しておくのが良いと思います。
最後までお読みいただきありがとうございました!