◎ BlognPlus(ぶろぐん+)を検索エンジンに載りやすいブログに改造しよう



静的生成ページにする利点とは?

ぶろぐんは動的生成のブログツールです。
動的ページというのはファイルの後ろに、「?」等の引数が付いたアドレスで表示されるページのこと。

  例 ) http://blogn.3co.jp/sample/index.php?c=2-&page=2

ぶろぐんブログツール以外ではNucleusジュゲムも同じ動的生成ブログです。
逆に、静的ページというのはファイルやフォルダで終わっていて引数がついていないページのこと。

  例 ) http://blogn.3co.jp/sample/c2-page2.html

MovableTypeライブドアブログシーサはこの静的生成ブログです。

MovableTypeのような静的生成ブログはSEO的に有利(検索エンジンに拾われやすい)ですが、
何か処理をする度に 再構築 を行う必要があるためにモッサリと重くてですね
場合によっては再構築中にエラーが発生したり、負荷をかけ過ぎてサーバーを追い出されたりすることもあるとかとか…(友人談(^^;

再構築とは、投稿した記事の内容や、変更した設定(ブログデザイン含む)をブログに反映させる為の、処理のことです。

動的生成ブログはその再構築が必要ないので、動作は早くサーバーへの負担も軽くて済みます。
ただ問題なのがSEO的に若干弱い(検索エンジンに拾われ難い)という点。
なので、静的モドキなブログに改造してその弱い点を補っちゃおぅ というのがこのページの趣旨です。

これから説明する方法でぶろぐんをカスタマイズすると、
実際は動的に作動しているけれど見かけ上は静的ページっぽく偽装する事ができます。
検索ロボットには偽装しているか否かの判断はできないので、結果的に検索エンジンに拾われやすくなります。 (まぁ、本物の静的生成ブログに比べたら弱い部分はありますケド( ̄  ̄;)

具体的には…

  http://~~/index.php?e=30
    ↓
  http://~~/e30.html

こんな感じにアドレスを変換して、HTMLファイルで出来た静的ページにリンクしているように見せかけます。


作業に入る前の注意点

この静的化カスタマイズをするにあたり、
BlognPlus(ぶろぐん+)スクリプト本体の index.php をいじくることになります。
間違えるとブログが壊れる可能性もあるのでphp初心者で自信が無い…という人は
バックアップをしっかり取って作業するか、もしくは諦めた方が無難です(^^;
壊れても当方は責任を取りませんので自己責任で作業してくださいネ

それと、これから説明するのは mod_rewrite が使えるサーバーでないと動きません。
mod_rewriteが使えるかどうか分からない場合はサーバー管理者に問い合わせる等して下さい。

動作確認サーバー:  ロリポップ! / さくらインターネット(スタンダード以上)
ぶろぐんVer: 2.3.2 / 2.4.0


静的生成ページに改造

作業としてはこの2つ
 (1) .htaccess の作成
 (2) index.php の修正


(1) .htaccess の作成

メモ帳を開いて↓を記述します。
#最後の行も必ず改行すること!

htaccess.txt というファイル名で保存します。
ぶろぐんプラスがインストールされているディレクトリ(index.phpファイルがあるディレクトリ)に
FTPソフトなどを使って、作成した htaccess.txt をアップロードしましょう。
アップロード後、ファイル名を以下のように変更してください

  htaccess.txt ⇒ .htaccess


さくらインターネット をご利用の方で、エイリアスでドメインを振り分けている場合は続きがあります。
>> コチラをクリック


(2) index.phpの修正

(2)-1
さぁ、次はドキドキのぶろぐんプラス本体の書き換え作業に入ります。
ぶろぐんプラススクリプトの index.phpファイル を開きましょう。

「HTML出力処理」の所に ここから~ここまで(下記テキストエリア内のソース) を追加します

315行目位  $blogn_skin = blogn_mbConv($blogn_skin, 4, 2);
316行目位  }



319行目位  blogn_get_skin_php($blogn_skin);
320行目位  exit;

(2)-2  ※Ver2.5.2以降
「コメント入力処理」の所に ここから~ここまで(下記テキストエリア内のソース) を追加します


337行目位 if ($token) {
338行目位   if (!$entry_id || !$utf_name || !$utf_mes || $token != $_SESSION["blogn_token"]) {
339行目位    $link_url = $blogn_entry_url."#comments";
340行目位    $info = 'コメント投稿エラー[未記入の箇所があるか、不正な投稿です。]<br><br>画面が自動的に切り替わらない場合は<br><a href="'.$link_url.'">こちら</a>をクリックしてください。';
341行目位    $errflg = true;
342行目位   }
343行目位 }else{
   #ソース行数はぶろぐんのバージョンによって変わるので目安程度にしてください

index.phpを保存し、FTPソフト等を使用して上書きアップロードすれば完了です(^^)b
ブログ上のカテゴリーやカレンダーなどのリンク先が全て 「.html」 で終わるアドレスに置き換わっていて、アクセスできることを確認してください


#過去ログ
(2)-2  ※Ver2.4.0~2.5.1の場合
Ver2.4.0以降 になると、コメント投稿処理にスパム対策が付加された為、
もう一箇所、追記しないとコメントができなくなっちゃいました(^^;

「コメント入力処理」の所に ここから~ここまで(下記テキストエリア内のソース) を追加します


300行目位  if (!$entry_id || !$utf_name || !$utf_mes || $_SERVER["HTTP_REFERER"] != $blogn_entry_url) {
   #ソース行数はぶろぐんのバージョンによって変わります



書き換えパターン

ブログ上の相対パスの部分を書き換えます。
例.
<a href="index.php?e=6">こちら</a> ⇒ <a href="e6.html">こちら</a>

赤字の部分の書き換えパターン
index.php?e=30 → e30.html
index.php?m=200505 → m200505.html
index.php?d=20050421 → d20050421.html
index.php?p=1 → p1.html
index.php?u=1 → u1.html
index.php?c=1-1 → c1-1.html
index.php?page=3 → page3.html
index.php?c=1-1&page=3 → c1-1page3.html
index.php?m=200505&page=3 → m200505page3.html
index.php?d=20050421&page=3 → d20050421page3.html
index.php?u=1&page=3 → u1page3.html


× 書き換えない例
絶対パスで書かれている
 http://get.daa.jp/blog/index.php?e=30

リンクが不完全(""がない等)
 <a href=index.php?e=30>ブログ</a>


もっとかいつまんで言えば
"" で囲まれた、 "index.php?~" …というのがあった時に書き換えます。



さくらサーバーでエイリアスを使用している場合の対処法

さくらインターネット を使用している人で、エイリアスを使って(サブ)ドメインを振り分けている場合、
そのドメインでは上述(1)の htaccess の書き方だと 404エラー が表示されてしまうハズです。
以下、エラーが表示されちゃう場合の対処法です。

例えば、hogehoge というフォルダをエイリアスでドメインを割り当てているとします。
そして、その下に blogn123 フォルダを作成して、ぶろぐん+をインストールしたとします。
【例1】
/hogehoge  ←エイリアスの設定
/home/アカウント名/www/hogehoge/blogn123  ←ココにぶろぐんをインストール

上述(1)の.htaccessの記述で RewriteEngine on という行があるので、その下に

RewriteBase /blogn123

を追記してください
<例>
------------------
DirectoryIndex index.php
RewriteEngine on
RewriteBase /blogn123
RewriteCond %{REQUEST_FILENAME} !-f
(略)
------------------
↑こんな感じに


違う例として…  blogn123 というフォルダをエイリアスでドメインを割り当てている場合。
【例2】
/hogehoge/blogn123  ←エイリアスの設定
/home/アカウント名/www/hogehoge/blogn123  ←ココにぶろぐんをインストール

この場合は、RewriteBase の書き方は

RewriteBase /

…と、なります。
その他のパターンの方は色々試行錯誤してみてくださいまし(^^;


注)
エイリアスの設定でフォルダの後ろに / をつけてしまうと、エラーになるので注意
 × /hogehoge/blogn123/
 ○ /hogehoge/blogn123


参考サイト