制作記……MovableType再構築を高速化するSSIの導入・(3)実際に導入する

2006年12月30日 20:00

(【制作記……再構築を高速化するSSIの導入・(2)解決案の発見】からの続き)Syu's quiz blogの管理人さんからは丁寧な回答や参考文献までご教示いただいた。誠にありがたいことだが、今回は自分の力で何とかなりそうだ。

スポンサードリンク

早速、検索の結果もっとも分かりやすく参考になりそうな【What a Wonderful Worldの「Movable Typeの設置」】の「10.SSIの適用」を参考に、作業に取り掛かった。このサイトに記述されていることはまさに自分がひらめいたことそのままで、注意事項もあわせ、きわめて役にたった。こちらも非常にありがたいことである。

まずはエントリー数が一番少ない、【郵送検診のサイト】で試してみることにする。念のためバックアップを取った上で作業開始。

共通部分をピックアップしてSSI化。赤い部分が共通化できる(例。実際にはタグ上で行うためもっと複雑)。
共通部分をピックアップしてSSI化。赤い部分が共通化できる(例。実際にはタグ上で行うためもっと複雑)。

記事ごとにどの部分が異なるのか、共通しているのかを見極めた上で、パーツ化して別ファイルに書き出していく。できるだけまとまった形でパーツを作り、パーツ数そのものは極力少ないように工夫する。先の参考サイトの注意書きにもあるが、SSIによるパーツの読み出しはサーバーへの命令実行に他ならない。完全なHTMLページなら1度で済む命令が、SSIパーツが一つ増えるごとにその分だけ命令が増え、その分読み込み時に時間がちょっぴりかかるし、サーバーへの負担も増える。あまり無茶はしない方がよいのは長生きするための処世術に他ならない。

なお、広告部分はテンプレートの状態では共通化しているものの、パーツ化してしまうと問題が発生してしまうので元のテンプレートに残す形となった。

パーツをそれぞれ名前をつけ、MovableTypeの管理画面上の「テンプレート」内「インデックス・テンプレート」上に入力していく。テンプレートの名前は他の一般テンプレートと区別するために「S-」などと頭につけ、ファイル名を指定。このファイル名と、埋め込み先のテンプレート上でのファイル名を同一にすることを忘れないように。

インデックス・テンプレート上に新しいテンプレートを作成すると、そのブログのローカルパス上にファイルが構築される。例えば読込先のテンプレートに、SSIパーツ化した「category-side.html」を読み込ませたい場合、その部分に

<!--#include virtual="/yk/category-side.html" -->

(該当サイトは/yk/というサブディレクトリィ内で構築されているため)
(すべて小文字)


と入力すればよい。

もちろん、HTMLのページでSSIを動かすのだから、サーバー上が単なるコメントではなくてSSIの命令だと判断してくれないと困る。サーバーそのものがSSIを使えないのなら問題外だが、拡張子が「shtml」でないと動かない場合、出力する拡張子をMovableTypeの管理画面上で変更する(「設定」「アーカイブの設定」「アーカイブ・ファイルの拡張子」で変更)か、.htaccessそのものを(【.htaccess活用法】などを参考)書き換えて.htmlでもSSIが動くようにすることを忘れずに。


■一連の記事:
【制作記……再構築を高速化するSSIの導入・(1)前提】
【制作記……再構築を高速化するSSIの導入・(2)解決案の発見】
【制作記……再構築を高速化するSSIの導入・(3)実際に導入する】
【制作記……再構築を高速化するSSIの導入・(4)導入の成果・最大11倍の高速化】

Related Posts Plugin for WordPress, Blogger...

スポンサードリンク



 


 
(C)JGNN||このサイトについて|サイトマップ|お問い合わせ