さて、裏サイトは検索に表示されたいですか?
親や学校の先生にバレたくない場合、検索に表示されない方が都合良いでしょうか。
ここでは裏サイト向けの「逆SEO対策」を話します。
<meta name="robots" content="noindex">
このように記述すると、検索サイトに表示されなくなります。
このままだと、自動アクセス自体は可能です。
これはweb魚拓やアーカイバーに勝手に保存されてしまうことを意味します。
そこで「見ないで下さい」という意思表示をします。
以下は「robots.txt」に記述する内容です。
User-Agent:Megalodon
Disallow:/
User-Agent:*
Disallow:/
また、能動的に防御する方法で「.htaccess」を使用する方法もあります。
#アクセス拒否する対象のIPが判明している場合
order deny,allow
deny from 対象のIPアドレス
あるいは「IPアドレスのホワイトリスト」を使って該当しないアクセスを全部拒否する方法もあります。
前述のような小細工なしに、もっと確実な方法があります。
例えば、クッキー送信をアクセス条件にします。どうやらクローラはクッキーを受け入れないようですので。
あるいは、POSTリクエストをアクセス条件にします。
<?php
//クッキーが送信されたら本文を表示
if (isset($_COOKIE['allow'])){
//本文を表示する処理を記述
} else {
//初回アクセスまたはクッキーを受け入れていない
setcookie('allow', '', time() + 3600, '/'); //ヘッダー以外に何か文字を出力する前に実行すること
//初回アクセス時の表示をする処理を記述
}
または
<?php
if (isset($_POST['accessed'])){
//本文を表示する処理を記述
} else {
//これをbodyタグ内の何処かで出力すること
echo '<form action="" method="POST"><button type="submit" name="accessed" value="accessed">認 証</button></form>';
}
このようにすれば、少なくともgoogleボットは本文にアクセス出来なくなります。
勿論、ログイン制にしても良いです。