ここから本文です

サーバーキャッシュについて

baserCMSはページ機能を中心に表示速度を向上する為、サーバー上にもキャッシュの仕組みを利用しています。キャッシュとは、簡単に説明するとプログラム等の処理結果を保存しておいて、2度目以降のアクセスの際に、プログラムの処理を省略する仕組みです。
※ 初期状態では、CakePHPのファイルベースのキャッシュ機能を利用しています。もちろん変更する事も可能です。

この便利な仕組みですが、一つ問題点があります。

WEBページを更新したのに反映されない

サーバーキャッシュは通常、時間単位で管理されます。
例えば、baserCMS のページ機能であれば、初期状態で1ヶ月となっています。
もちろん、管理画面におけるページの更新時は対象ページのサーバーキャッシュは削除されますが、編集作業を行わない場合、1ヶ月間はサーバーキャッシュを保持します。
※ 管理画面にログイン中は、サーバーキャッシュはききませんが、キャッシュ自体は保持されています。
※ フィード読み込み機能では、任意に時間を設定できるようになっています。

Webページにきちんと反映させるには?

このサーバーキャッシュが baserCMS に与える影響は具体的に次の二つタイミングが考えられます。
それぞれについて対処方法を説明します。

編集したテンプレートを FTP でアップロードしても反映されない場合

管理画面にログインした状態で、対象のページを開けばそのページのキャッシュは削除されますが、ログインしていない状態で開いても反映されません。
この場合、サーバーキャッシュを全て削除する事をおすすめします。

サーバーキャッシュを全て削除するには、管理画面のシステム設定のサイドメニューにある「サーバーキャッシュを削除」をクリックします。
※ 制作・開発モードをデバッグモードに切り替える事でも削除できます。
※ サイドメニューの「サーバーキャッシュ削除」は、baserCMS1.6.0以降の機能となります。

また、デバッグモードの間は、キャッシュは生成されないようになっていますので、初期制作の段階では、デバッグモードにしておく事をおすすめします。

作業が終わった後は、忘れないようにノーマルモードに戻しておきましょう。

ブログ記事更新時、フィード読み込み機能で出力される部分に反映されない場合

フィード読み込み機能でもサーバーキャッシュが生成される仕様となっているのですが、フィードを反映させるタイミングの事を考え個別にキャッシュ時間を設定できるようになっています。

早く反映されているのを確認したい場合、サーバーキャッシュの削除機能を利用すればいいですが、サイト全体のキャッシュが削除されてしまうので考えものです。

この場合、フィード管理のサイドバーにある「キャッシュを削除」をクリックすると、フィードのキャッシュだけが削除できますのでこちらを利用します。

  • baserCMS on Twitter
    フォローする