Chomado's Blog
You Are Reading

[.htaccess][canonical] ドメイン取得後のリダイレクトなど

0
サイト運営

[.htaccess][canonical] ドメイン取得後のリダイレクトなど


ドメイン chomado.com を取得した後, .htaccessによる全ページリダイレクト処理と, 全ページに canonical タグ(重複コンテンツがある際に, 代表とするコンテンツを検索エンジンに伝えるタグ)の記述をしました. その時に色々苦労したので日記に書こうと思いましたφ(*゚▽゚*)oメモメモ

目次

  1. ドメイン取得により重複コンテンツが生まれた
  2. 重複コンテンツはクローラーが弾く
  3. SEO的に最悪
  4. 対策は2つある
  5. canonicalタグ
  6. canonicalタグ: WordPressの場合 (PHP)
  7. .htaccess に記述して301リダイレクト

ドメイン取得により重複コンテンツが生まれた

もともとこのサイトは chomado.ciao.jp (現在はchomado.comにリダイレクトされるようになっている) で動いているのですが,

私はおととい chomado.com のドメインを取ったので,

http://chomado.ciao.jp/~ でも
http://chomado.com/~ でも 同じコンテンツにアクセスできようになってしまいました.

実際は, chomado.ciao.jp のコンテンツが chomado.com の服を着ているだけなんですけど,
検索エンジンから見たら, まったく違うURLなので, まったく別人扱いされるわけなので,
まったく同じクローンがいる感じになっているわけです.

たとえば
スクリーンショット 2014-11-13 14.10.53
(ブラウザのURL欄に注目)
スクリーンショット 2014-11-13 14.11.20

このように.
2パターンのURLでアクセスできてしまいます

前回の記事「Google Analyticsを始めた」も,

  • http://chomado.ciao.jp/blog/manage-my-website/google-analyticsを始めた/
  • http://chomado.com/blog/manage-my-website/google-analyticsを始めた/

の両方のURLで同一の内容のものが見られてしまいます. (全く違う場所に全く同じサイトがある感じ)

重複コンテンツはクローラーが弾く

これはSEO的にはとても良くないことみたいです.
なぜなら, Googleのクローラー(検索エンジンのなかにある, ページを収集するソフトウェア)に,
chomado.com が chomado.ciao.jp(前のアドレス)のコピーサイト(重複コンテンツ) って判断され,
もうクローリングされなくなってしまうかもしれないからです.><

検索で拾われなくなってしまう, ということですね!

SEO的に最悪

たとえば,
[動的型付け 暗黙型変換]
で検索すると, 私のブログの記事が1番上に出てきます.
スクリーンショット 2014-11-13 14.07.43

でもこれよく見ると,
chomado.ciao.jp
のほうがヒットしていますね!

これでユーザがこれにクリックしたら, chomado.ciao.jp のほうが賑わうわけでして, 完全に chomado.com の方は無視されるわけです

こんな感じで普通の人は検索でヒットした方に行くわけです.

わざわざここで
http://chomado.ciao.jp/programming/type-safety/
のURLを
http://chomado.com/programming/type-safety/
に打ち直す人はいないわけです.


まあこの方はわざわざこっちの方を後で見てくださったわけですが, こんな親切な人は普通いません.

しかも元々の chomado.ciao.jp のほうをブクマしてくださっている方や, chomado.ciao.jp でRSSリーダーを使っている方もいらっしゃるだろうし.

うーん, うまくせつめいできないけど, とにかくダメなんです!!><

あと, 私は昨日からGoogle Analyticsに登録したわけですが,
そっちは chomado.com で登録しているので,
chomado.ciao.jp
でアクセスした人はトラッキングされない! ><(当然)

とにかく害悪!!!!

2パターンのURLで同じサイトアクセスされるとか害悪でしかない

対策は2つある

  1. canonical タグ で検索エンジンに「正しいURLは chomado.com/~ だよ」って教える
  2. chomado.ciao.jp でアクセスした人たちは有無を言わさず全部 chomado.comへ 301リダイレクトする

canonical タグ

canonical タグ は, 上でも書いたとおり, 検索エンジンに「正しいURLは chomado.com/~ だよ」って教えるものです.

<link rel=”canonical” href=”正しいURL(私の場合chomado.com)” />

って使います.

例えば
http://chomado.ciao.jp/blog/manage-my-website/google-analyticsを始めた/
の head 内には

<head>
  <link rel="canonical" href="http://chomado.com/blog/manage-my-website/google-analyticsを始めた/" />
  ..
</head>

って書くわけです

WordPressの場合

そして, これを全ページのヘッダ内に入れたいので, WordPressの場合は, header.php 内に

<?php if ( is_single() ) :?>
	<link rel="canonical" href="<?php echo esc_url( get_permalink() ); ?>" />
<?php elseif (is_home() || is_front_page() ) : ?>
	<link rel="canonical" href="<?php echo esc_url( home_url( '/' ) ); ?>" />
<?php endif; ?>

を追記しました.

.htaccess に記述して301リダイレクト

普通のリダイレクトではなく301リダイレクトが重要みたいです(((o(*゚▽゚*)o)))

普通のリダイレクト(JavaScriptで回したり, 302リダイレクト)は, 普通にリダイレクトするだけなんですけど,
301リダイレクトは
「恒久的に」「このページに来たらこっちに移す」「このページはもう使わんよ」
って意味を持つらしいです(((o(*゚▽゚*)o)))
そしたら検索エンジンも理解してくれるみたい.

ということで.htaccessに以下(の2-6行目)を追記しました

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(chomado\.ciao\.jp)(:80)? [NC]
RewriteRule ^(.*)$ http://chomado.com/$1 [R=301,L]
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine On
...
</IfModule>
# END WordPress

** 絶対に <IfModule>内に書くこと! でないと動きません.

以上です!

追記

私のこの記事を読んでくださった方の記事です(((o(*゚▽゚*)o)))お役に立てたようですっごく嬉しい!
WordPressのURLを変更しました from ぐりごろぶろぐ


Madoka Chomado (ちょまど)

千代田まどかです。よく「ちょまど」と呼ばれます。Microsoft 社員。文系出身プログラマ兼マンガ家です。

(2) Comments

  1. […] これについては、ちょまど氏(@chomado)のブログの、[.htaccess][canonical] ドメイン取得後のリダイレクトなどを参考にしました。 […]

  2. […] SEOのこのコピーコンテンツあたりの話は先月書いた記事『[.htaccess][canonical] ドメイン取得後のリダイレクトなど』でも少し書いたので興味のあるかたはぜひ(((o(*゚▽゚*)o))) […]

コメントを残す

メールアドレスが公開されることはありません。