読者です 読者をやめる 読者になる 読者になる

ウェブと食べ物と趣味のこと

格安SIMのこと、windows10、迷惑メールネタ、写真ネタなど。困った方の参考になる記事を心掛けます。

サイト内検索スパム 自分のサイトがおかしな検索文字列でインデックスされてしまったときの対応方法

SEO サイト運営

f:id:photoblg:20170316120112j:plain

※WordPressのタグが正しく表示されていませんでしたので修正しました。

今朝なんとなくTwitterをみているとロットン(id:lifefucker)さんのあるツイートが目に入ってきました。

URLを見てみるとロットンさんのブログがスパムっぽい感じでインデックスされているようです。

自分のブログがスパムに汚染されいているかのチェック方法と、ブログ別(はてなブログ、WordPress)に対応した方法を紹介します。

怪しいURLがインデックスされているか確認する方法

まずはsite:(自分のブログドメイン)+ロットンさんのツイートに入っている文字列で検索してみると、まったく同じような内容でインデックスされていました・・・。

よく見ると共通点があり、インデックスされているのは検索結果のページのようですのでsite:www.weblog-life.net/search?q=で検索してみると見事に汚染されていました。

f:id:photoblg:20170316101459p:plain

Googleに対する対応方法

既にインデックスされてしまったURLはSearch ConsoleのURLの削除で消していきます。

f:id:photoblg:20170316101343p:plain

f:id:photoblg:20170316101611p:plain

リクエストタイプはいろいろありますが一番上の検索結果からの一時非表示+キャッシュの削除を選びました。

f:id:photoblg:20170316101644p:plain

保留中となりますので反映されるまで待ちます。

f:id:photoblg:20170316101735p:plain

なお一時的に非表示になるのは90日間ですので、以下の方法でインデックスされないようにしていきます。

参考URL 削除ツール - Search Console ヘルプ

ブログ別の対応方法

はてなブログ

はてなブログはいろいろと制約が多いのでjavascriptで追加するしかないかなと思っていたところ、以下の記事にやりたいことが紹介されていましたので使わせていただきました。

はてなブログのブログ内検索結果ページだけを "noindex" にするよー - めかりる

コードはそのままで以下の1行だけ修正して対応しました。

meta.setAttribute(“content”,“noindex”);

meta.setAttribute(“content”,“noindex,follow”);

GoogleBotにリンク先のページへは辿って欲しいのでfollowを追加してます。

一応検索結果ページをChromeの開発者ツール(mac:command + option +i)でチェックしてみたところコードの挿入は確認できました。

f:id:photoblg:20170316094946p:plain

WordPress

WordPressの場合は、function.phpに以下のような記述を追記すれば、検索結果のページにnoindexが入りますので今後はインデックスされないと思います。

function search_page_noindex(){ 
    if (is_search()) {
        echo '<meta name="robots" content="noindex,follow" />';
    }
}
add_action('wp_head', 'search_page_noindex');

※テーマによっては既に適用されていますので適用前に確認することをお勧めします。( AFFINGER4はデフォルトでヘッダーテンプレートに処理が入ってました)

最後に

今回はサイト内検索スパムの対応について書きました。

予期せぬところでスパム判定されてたくないので、このような内容はなるべく早く対応したいものです。

参考 ユーザー生成スパムに関するガイドライン - Search Console ヘルプ

※急いで書いたのでおかしなところがあったらご指摘ください・・