「重複したホスト名」の統一(googleアナリティクス)の対策

こんにちは、市民パソコン教室北九州小倉校の篠原です。

 今回は、Googleアナリティクスを見ていると、「重複したホスト名」のタイトルの注意らしきメッセージが有るに気付きました。
 内容を読んでみると、どうも市民パソコン教室北九州小倉校のドメイン名が二つ有るよと言っているようです。
 確かにドメイン名は

siminpc-kitakyuhsu.com
www.siminpc-kitakyushu.com

 どちらでも表示されます。
 これが同じwebページなのに違うページとして認識されていますよ、と言うことみたいです。
 全然意識していなかったことなので、何のことやら。
 ということで少し調べてみました。
301リダイレクト:重複したホスト名


 ちなみに下記の設定を使用することが出来るのは、ApacheというWebサーバーソフトを使っているWebサーバーで使用することが出来ます。

「wwwあり」と「wwwなし」は何故できる?

 原因を探ってみたところ、市民パソコン教室北九州小倉校が使用しているレンタルサーバー「ロリポップ」では、独自ドメインで登録すると、どうも「www有」「www無し」両方でアクセスができるようになってしまうようです。
 ということで、これはユーザーがどうにかできることではないようです。

「重複したホスト名」の注意が出るのはなぜ

 webページを見まわっているクローラーというやつが、この「www有り」「www無し」のページがあると別々のページあると認識してしまうようです。内容が全く同じ(もともと一つしか作っていないのですが)、ゴーストのような、ドメイン名が違うけれど内容が全く同じwebページがあるように認識されてしまうわけです。これは怪しいということですね。

「重複したホスト名」がなぜ注意?

 これの何が注意のかといわれると、考えられるのが「偽サイト」ではないかということです。
 管理者としては、そんなつもりは無いわけですが、機械的に判断されてしまえば、やむを得ないところです。
 また、同じサイトで、とメイン名が複数あるということは、ページのアクセス数や解析、リンクをしてもらう際には好ましくない状態であるということになります。

では、どちらかにドメイン名を統一する

 上記のことを踏まえて、思わしくないことはやはり是正しておいたほうがいいですよね。
 ということで、調べてみると、そもそものレンタルザーバー側にも認識があるようで、対策の仕方が掲載されていました。
 その方法を掲載しておきます。

 エディターで下記ファイルを作り、以下のように「www有り」か「www無し」かのどちらかを入力します。


作成するファイル名

.htaccess


 yourwebpage\.comの部分は、あなたのドメイン名を入力してい下さい。(\マークを忘れないようにしてください)
 また、www\.yourwebpage\.comのうちの\マークはバックスラッシュに変わることがあります。
 設定の最後の行の後は改行して空白行を作ってください。

「www無し」に統一

RewriteEngine On

# www無しのドメイン名に統一
RewriteCond %{HTTP_HOST} ^www\.yourwebpage\.com
RewriteRule ^(.*) http://yourwebpage.com/$1 [R=301,L]



「www有り」に統一

RewriteEngine On

# www有りのドメイン名に統一
RewriteCond %{HTTP_HOST} ^yourwebpage\.com
RewriteRule ^(.*) http://www.yourwebpage.com/$1 [R=301,L]



 ここまで準備ができたら、ファイルを保存し、FTPソフトでアップロードすれば完了です。
 アップロードするの場所は、Webコンテンツがあるルートフォルダです。

 これが「301リダイレクト」といわれる手法だそうです。
 考え方は、「A」のアドレスが呼ばれたら「B」のアドレスに書き換えて、「B」のアドレスに行ってね、ということみたいですね。

ロリポップで独自ドメインしかアクセスしないようにする

 ロリポップでは、ロリポップの初期ドメインと、更に独自ドメインを設定した場合は、独自ドメインに前述した「wwwあり」と「wwwなし」ドメインが最初に作られるそうです。
 そこで、ロリポップの初期ドメインのアクセス無しにし、独自ドメインだけアクセスできるようにすることも可能です。
 例では、指定したドメインのみアクセスを許可するように設定しています。


1-2行目:アクセスを許可するドメイン名を設定(サブドメインがある場合はここで指定)
3行目: アクセス制御したい時の評価の順番を指定する deny:拒否、allow:許可、の順に評価するということ
4行目: すべてを拒否する
5行目: だけど、先のSetEnvIfで設定した2個のドメイン名はアクセスを許可する

1. SetEnvIf Host "^独自ドメイン名\.com$" hos_ok
2. SetEnvIf Host "^www\.独自ドメイン名\.com$" hos_ok
3. order deny,allow
4. deny from all
5. allow from env=hos_ok

 という具合です。


以上で、「重複したホスト名」への対策の仕方については終わりです。
新たな視野が少し開けました。






ブログのお題拝借
Tag: 301リダイレクト Apache アクセス制御 重複したホスト名 ロリポップ

コメント


認証コード4245

コメントは管理者の承認後に表示されます。