静的ファイルがキャッシュされる(ブラウザキャッシュじゃない場合)

  • 104
    いいね
  • 7
    コメント
この記事は最終更新日から1年以上が経過しています。

現象

  • cssを更新しても、更新内容が反映されない
  • 下記を行っても、反映されない
    • キャッシュクリアする
    • ブラウザのシークレットモードで開く
    • cssのURLクエリパラメータ強制変更

環境

  • [hostOS]Mac 10.9.4
  • Vagrant 1.6.3
  • [guestOS]CentOS 6.5
  • VirtualBox 4.3.12
  • FuelPHP 1.7
  • Apache 2.2.15
  • cssはsass使ってない。

推測

  • ブラウザキャッシュではない
  • サーバ側でキャッシュされてる
  • apacheあたり?

調べた

http://tipshare.info/view/4f3481ee4b21227814000001
http://httpd.apache.org/docs/2.0/ja/mod/core.html
VirtualBoxの共有フォルダに設定したディレクトリは、外部ストレージ的な扱いになる。

その際、apacheがファイルの更新を検知できない。ということでOK?

解決方法

httpd.confにキャッシュしない設定を追記する。(要再起動)
具体的には以下のように設定することで解消できました。

<Directory [対象のディレクトリ]>
EnableMMAP Off
EnableSendfile Off
</Directory>