Webサービスを検索エンジンに宣伝してもらうための3つの仕組

3週間くらい前に公開したhttp://kaihatsu.chew.jp/infony/(処理速度がアレ)ですがぜんぜんアクセスがないので宣伝が足りないせいだと思い込むことにして小細工をしてみました。


検索エンジンにトップページと空の結果ページの2ページしかインデックスされていないのでできるだけ多くのページがインデックスされるようにがんばってみます。


利用された履歴をとる

実は公開1週間目くらいから地味に利用履歴をDBに保存していました。


これをリスト化することでコンテンツ(といっても流用なので微妙)の含まれたページをインデックスしてもらって検索エンジン経由のユーザを増やそうという魂胆です。

URLを変更する

今までの検索結果だと

http://kaihatsu.chew.jp/infony/index.php?url=hogehoge

なURLだったのでApachemod_rewriteを使って

http://kaihatsu.chew.jp/infony/url/hogehoge

に書き換えて表示するようにします。

RewriteEngine on
RewriteRule ^infony/url/(.*)$ http://kaihatsu.chew.jp/infony/info.php?url=$1&%{QUERY_STRING} [L]
RewriteRule ^infony/url/$ http://kaihatsu.chew.jp/infony/info.php?%{QUERY_STRING} [L]

DBに保存するURLは

$settings_cachetime = 8640000;
$thispage = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$thispage = preg_replace("/info\.php\?url=/","url/",$thispage);
$thispage = preg_replace("/%2F/","/",$thispage);
$thispage = preg_replace("/&submit=/","?submit=",$thispage);
$cachelink = $settings_cachedir . md5($thispage) . '.html';
if (@file_exists($cachelink)) {
  $cachelink_time = @filemtime($cachelink);
  if ((time() - $settings_cachetime) < $cachelink_time) {
    @readfile($cachelink);
    die();
  }
}

のような感じで書き直しています。


AllowEncodedSlashes Onが使えなかったのでスラッシュも修正。
ついでに処理速度が遅いので100日キャッシュしたりました。

内部リンクをはる

トップページの最下部にカレンダーを設置して、それぞれの日付の利用履歴を表示しています。


さすがに何もないページまでリンクするといかがわしいことがクローラーにばれてしまいそうなので検索結果のある月日のみのリンクにしました。
すでに十分いかがわしさ満載です。


これをひとはスパムと呼びますか?

巡回待ち

そんなこんなであとはクローラーにごりごり巡回してもらえればいいのに。
ついでにsitemap.xmlを自動生成すればいいと思う。


今回参考にさせていただいたのは以下
スパムサイト作成講座(いい意味で)
サービス終了のお知らせ
http://www.future-planning.net/x/modules/news/article.php?storyid=2274


キーワードごとにごにょごにょとか考えてたけどもうムリみたい。


次だ、次!