[MT覚書]「MT4」のトップページだけ、ソースが途中で切れたり真っ白になったりする

2011年8月22日

MT4のブログで、サイドバーの表示が出てないものが発生。
再構築失敗か?と思い、調べてみるとこんな感じでした。

●再構築を幾度か試したが、
ソースで見ると700~900行あたりで突然ぷっつり切れる場合と
bodyの中が全て抜けている場合(この場合画面が真っ白)とがあった。
●ここ2日間ぐらいのサムネイルの生成がうまくいってない
●記事数は630ぐらい・・・

とりあえず応急処置的にやってみたこと。

●「設定」→「ブログの設定」→「公開」の「ブログ記事の表示数」を「10」→「2」に変更
●mt-config.cgiに「EntriesPerRebuild 2」を追記。

EntriesPerRebuildの記述について

「EntriesPerRebuild 40」を「EntriesPerRebuild 10」
に書き換えるという方法で紹介しているところが多かったのですが、
なぜか当該のconfig.cgiには、EntriesPerRebuildの記述自体がありませんでした。謎。バージョン違いによるもの?

EntriesPerRebuildの記述参考

Movable Typeの再構築時のエラー対策 その1 – みんなのレンタルサーバ シフトウェブ / SHIFTWEB

一度に再構築する値が多ければ、再構築する際に一気に行いますが、その分CPUへの負荷は高まります。
逆に数値を下げてやると再構築時に一度にエントリーを再構築する数は減りますが、その分、分割して再構築を行うのでCPUの負荷は分散されます。(結局は同じ負荷ですが・・サーバをだましだまし使うことができます)

#EntriesPerRebuild 40 の40がデフォルトの数値です。

コメントアウトされている場合にはデフォルトの40で動作します。 コメントを削除して数値をさげてやれば再構築の処理が分散されます。

MovableType 再構築(リビルド)の限界 – Shoulder.jp

原因は、レンタルサーバ側でのサーバのリソース制限。
MovableTypeの再構築(リビルド)はかなりCPUを使うが、レンタルサーバから割り当てられているCPU占有率を超えると自動でスクリプトを止めてるみたい。
「XREA」での上限は500ページ、「ロリポップ」での上限は300ページってのがある程度説得力をもった説といえそう。(同じレンタルサーバ屋でもサーバによって多少違いはあると思うけど)
今、250ページ近くあるので、結構危機感あり!

Movable Type・MT:再構築の500エラーを解決する方法:DOR underground

これから考えられる対処

記事数の増加による再構築エラーは今までにも経験ありますが、
普通は500エラーになりそうなものですが、エラーは出ず、ソースがぶっつり切れるというのが気になるなぁぁ

●MT5へのアップグレード
●今のブログは旧で残して、新しいブログの構築

その他参考記事

再構築時間短縮のための方法・小技 (MovableTypeインストールと設定方法)

1.サーバー移転
2.データベースを変更
3.ダイナミックパブリッシングの利用
4.自動再構築プラグインの利用
5.再構築高速化プラグインの利用
6.インデックステンプレートの再構築オプションをはずす
7.不要なMTタグを整理
8.ログデータの削除
9.データベースのバキューム(整理)
10.EntriesPerRebuildの設定

記事数が増えてきて心配なので、どういう対処方法があるのかGoogleで探してみました。 – tacchiniの日記

以下2つで紹介されていたプラグイン「Smart Rebuild」は、
MT3以前用で使えませんでした。

Movable Type・MT:再構築エラーを解決する方法その2:DOR underground

[N] MTのカテゴリ再構築を高速化するプラグイン「Smart Rebuild」