東北のメインサイトはXOOPSを使っています。キャッシュが働いているときはそこそこのレスポンスなのですが、キャッシュを再作成するタイミングにぶつかると、表示はサーバー性能に依存することになり遅くなります。

XOOPSの構造上これは仕方がないことなのですが、これをどうにかする方法はないものか。
ものすごくシンプルな発想をしてみました。

キャッシュを強制的に作ってしまえれば問題ないのですが、探してみたところそのようなモジュールの類はない。

それなら、定期的にトップページにアクセスさせればキャッシュを作るだろうと、CRONを使って何かできないかと考えてみたところ、ついでなのでトップページも静的に作ってしまえばいいという結論に達した。

これは簡単な方法で解決できることで、CRONで定期的にトップページをWGETすればいい。そうすればその時点のindex.htmlが作成できるので、トップのURLへアクセスされたらindex.htmlが表示されることになる。XOOPS本来のindex.phpはそのままにしてできることだし、非力なサーバーでもトップページの表示を改善できる方法だ。

具体的にはこんなシェルをCRONで毎時0分に実行しています。

#!/bin/sh
cd /virtual/xxxxxx/public_html/example.com
rm index.html
/usr/bin/wget http://example.com
exit

例はCORESERVERなので、試すときは自分の環境に合わせてください。

何をしているかといえば、
1.ドメインのトップディレクトリへ移動
2.index.htmlを削除
3.WGETでindex.htmlを作成

これだけです。

通常なら、indexページが表示される順番はindex.html→index.htm→index.cgi→index.phpとなるはずなので、先にindex.htmlを削除しておけばWGETがアクセスするのはXOOPS本来のindex.phpになり、その結果WGETで静的なindex.htmlを作成できます。

通常のURLでアクセスされたときに表示するのはindex.htmlになるので、よほど間が悪く0分にアクセスしない限り表示は速くなります。

XOOPS本来の機能で表示速度を改善しているわけではないので、あくまで表面的な表示速度の改善でしかありません。

しかし、利用者にしてみればindex.htmlだろうがindex.phpだろうが関係ないわけで、ページの表示にストレスを感じないことが一番でしょう。

そう考えればこういう方法もありかなと思います。

ちなみに、サイドバーへ表示しているブロックがトップページと共通なら、このタイミングでブロックキャッシュも作られるのでそこそこ恩恵は受けると思います。




同じカテゴリの記事

coded by nessus

トラックバック

このブログ記事に対するトラックバックURL:

コメント & トラックバック

コメントはまだありません。

Comment feed

コメントする

エントリーカレンダー

2012年2月
« 12月    
 1234
567891011
12131415161718
19202122232425
26272829  

月別アーカイブ

DO THE RIGHT THING!

東北アマ研はDO THE RIGHT THING!に賛同しています。
DO THE RIGHT THING! 不正に負けないアフィリエイト!

情報商材は詐欺

このブログについて

東北アフィリエイトマーケティング研究会のメンバーが運営するブログです。アフィリエイト業界の動きやイベント情報などを発信していきます。

[PR] 東北の企業応援


QLOOKアクセス解析