ラベル キャッシュ の投稿を表示しています。 すべての投稿を表示
ラベル キャッシュ の投稿を表示しています。 すべての投稿を表示

2010年10月29日金曜日

findを使って特定ディレクトリ以下のファイル数カウント・削除をする

findを使ってファイル数のカウント、削除をするコマンドです。

PAAPIのリクエスト2000回制限で導入した、放っておくと際限なく増えてしまうキャッシュファイルの対応用です。

特定ディレクトリ以下のファイル数カウント
/usr/bin/find /path/to/cache_dir/ -type f | /usr/bin/wc -l

最後にアクセスしたのが120分以上前のファイルを削除
/usr/bin/find /path/to/cache_dir/ -amin +120 -exec /bin/rm -f {} \;

これをcronでスケジュール化し、増え続けるキャッシュファイル対策は完了です。

参考ページ
http://mytips.exblog.jp/7558083/
http://d.hatena.ne.jp/yohei-a/20090303/1236048930
http://aligach.net/diary/20090624.html
http://www.k-tanaka.net/unix/find.html

2010年9月8日水曜日

Webサーバー上のファイルのキャッシュの制御

ファイルのキャッシュコントロールをする要件があったので、復習の意味も兼ねて調査しつつ、手法をまとめてみました。


■htmlのmetaを付加する

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">


一番簡単でポピュラーなやり方だと思います。
使えるのはHTMLファイルのみという制約がありますが。


■ファイルのオシリに引数を付ける

<img src="hoge.gif?20100907">
<link type="text/css" rel="stylesheet" href="hoge.css?20100908">
<script type="text/javascript" src="js/hoge.js?20100909" language="JavaScript"></script>


みたいな感じ。
引数を付けることによってファイルの内容が異なることを明示し、ブラウザにキャッシュさせないというやり方。
これもかなりポピュラーかと思います。


■Apacheで制御する

Header set Cache-Control "no-cache"
Header set Pragma "no-cache"


こんな具合に、httpヘッダにno-cacheを出力するように設定することで、httpd.confや.htaccessでも制御可能です。


今回はこちらのサイトを参考にしました。
http://blog.look-ss.jp/article.php/2008092600255048 http://tech.bayashi.net/pdmemo/browsercache.html



あと大事なのは実際キャッシュされているかどうかの確認。
firefoxのアドオン「CacheViewer」が便利です。
https://addons.mozilla.org/ja/firefox/addon/2489/