RebuildAt1stView(Beta) MT4専用全アーカイブ対応版。
公開日 : 2007-08-28 19:10:37
最新版はこちらから。
ハイブリッド・パブリッシング(アーカイブ毎に設定できるように)に対応しました!
関連エントリー
概要
通常の再構築は一切行わず「最初にそのページへのアクセスがあった時」に再構築(静的HTMLファイルを生成)を行います。
ダイナミックパブリッシングによる再構築の負荷軽減と静的生成による閲覧時の負荷軽減の両方のメリットを享受できる方式です。
Greg Packer's Publishingの世界へようこそ!
先日のHack-a-thon の後に話していた中でRebuildAt1stViewの話が出ていたのとOgawaさんにも釣られて? いただいたので、ちょっとやってみる。
さて、junnamaさんの再構築に関するエフォートの中で一番示唆に富んでいる(と私が思う)のは、実はRebuildAt1stViewである。
但しTheSchwartz::Jobのみをバックグラウンドかcronジョブで実行するような仕組み
のところとか排他処理のところとかはまだやっていない。BackgroundRebuilderをMT4向けの単純なTheSchwartz::Jobのバックグランド処理版で実装したいとは思っていて、このあたりの組み合わせが「再構築」対策の一つの方向性になればと思う。だから、これはまだ途中段階のサンプル。 動作については一切無保証です。改造等はご自由にどうぞ。
MT4対応/全アーカイブ対応/インデックスアーカイブの再構築オプション
今回は、MT4正規版でエラーになっていたらしいのでそのあたりをふまえて全面的に書き直し+全アーカイブ対応とした。以前よりずっとシンプルなものになった。DBの拡張もなし。
- RebuildAt1stView フォルダをpluginsフォルダにアップロード。
- 各ブログの「公開」の設定は「すべてのテンプレートを静的に構築する」(画像の通り)。
- 設定はブログ毎の「プラグインの設定」→「RebuildAt1stView」から行う。個別テンプレート毎の設定はまだできないが、「アーカイブ・テンプレート」のみを対象とすることが出来るようになった(チェックを入れるとインデックス・テンプレートは再構築の際に通常通りファイルが生成される)。
- 同梱されている _htaccess のパス情報を環境にあわせて修正し、.htaccessにリネームしてドキュメントルートに設置する。
Options -Indexes
ErrorDocument 404 /mt/plugins/RebuildAt1stView/RebuildAt1stView.cgi
ErrorDocument 403 /mt/plugins/RebuildAt1stView/RebuildAt1stView.cgi
ダウンロード
このプラグインが有効な状態での「再構築」とは即ち「ファイルを削除」することです。 全再構築を行うと生成されているファイルは (設定によりインデックスアーカイブを除いて) すべて削除されます。もちろん見かけ上の再構築処理は非常に軽くて速い。
また新規にエントリーを作成してもファイルは生成されませんし、エントリーを更新したり削除した場合、本来更新されるべきファイルは削除され、最初にそのページへリクエストがあった時点で再構築されファイルシステムに書き出されます。