harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

apache web メモ

[apache]mod_file_cacheメモ

投稿日:2006年12月23日

mod_file_cache/apacheのキャッシュ設定

頻繁にアクセスが発生するファイルをメモリキャッシュにいれ、
毎回ファイルシステムからアクセスしなくて済むようにする。
コレによって画像ファイルへのアクセスをディスクから物理メモリに移動し
リクエスト時のI/Oの増加を防ぎ、処理を早く返す。

【参考書】
オライリー/apacheクックブック 213ページ

1)mmap.confの設定

メモリキャッシュに格納するファイルのリストを作成する。
今回は画像ファイルをメインで選択。

  • /etc/httpd/confにリストの一覧ファイルを作成。
    ファイル名:mmap.conf

    # pwd
    /etc/httpd/conf
    # find /var/www/html/xoops/html/images/ -type f -print | sed -e 's/.*/mmapfile &/' > /etc/httpd/conf/mmap.conf
    # less mmap.conf
    mmapfile /var/www/html/xoops/html/images/alignright.gif
    mmapfile /var/www/html/xoops/html/images/italic.gif
    mmapfile /var/www/html/xoops/html/images/linethrough.gif
    mmapfile /var/www/html/xoops/html/images/image.gif
    mmapfile /var/www/html/xoops/html/images/s_poweredby.gif
    mmapfile /var/www/html/xoops/html/images/await.gif
    mmapfile /var/www/html/xoops/html/images/pointer.gif
    mmapfile /var/www/html/xoops/html/images/alignleft.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon1.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon2.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon3.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon5.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon4.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon6.gif
    mmapfile /var/www/html/xoops/html/images/subject/icon7.gif
    mmapfile /var/www/html/xoops/html/images/subject/index.html
    .....
    .....

2)httpd.confの設定

2-1.mod_file_cacheモジュールを読み込む

RPMのapacheではデフォルトでモジュールが入っている。
ソースからコンパイルするときはオプションで追加。
で、ともに以下の行をコメントアウトして有効にする。

LoadModule file_cache_module modules/mod_file_cache.so

2-2.EnableMMAPディレクティブを有効化

デフォルトでで有効になっているのでコメントになっている。
設定はそのままでもよいが、わかりやすくなるので明示的にコメントアウトしてonにする。

< #EnableMMAP off
---
> EnableMMAP on

2-3.リスト一覧ファイルを読み込む設定を追加

1で作成したmmap.confをインクルードするためhttpd.confに追加。

Include conf/mmap.conf

3)設定の適用

上記まで設定できたらconfigtest。
すると以下のようなメッセージが表示される。

[[email protected] conf]# /etc/init.d/httpd configtest
[Sat Dec 23 01:50:54 2006] [warn] (22)Invalid argument: mod_file_cache: unable to 
mmap /var/www/html/xoops/html/images/icons/index.html, skipping
Syntax OK
[[email protected] conf]# 

index.htmlはなぜか許可されない様子で、スキップされる。
書式は問題ない様子だがindex.htmlはキャッシュには入らない?
テキストファイルなのでキャッシュになくても問題ないが原因を知りたい&
configtestでエラーが出るのはウザいので、mmap.confのりすとからindex.htmlの行を削除。
再度configtestを行ってOK。
原因は暇なときに調査。

4)apacheをrestart

この設定をした場合はgracefulでなくrestartで。

# /etc/init.d/httpd restart | tail -f /var/log/httpd/error_log

-apache, web, メモ
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

no image

RPMパッケージのJcodeインストール

【インストール手順】 1)ダウンロード 2)Jcodeインストール 3)インストール確認 [参照サイト] お世話になっています。 http://fedorasrv.com/cpan2rpm.shtml …

no image

[ssh].shostsによる認証許可メモ

.shostsによる認証許可。 設置場所:各ユーザーのホームディレクトリ ユーザーのホームディレクトリに.shostという隠しファイルを作成し 接続を許可する外部ホストのIPないしドメインを記述してお …

no image

opensshにてfingerprint確認を省略する設定

サーバー構築中によくある手間として、初めてsshでアクセスするホストから fingerprintの確認ダイアログが出てきてyesする手間があるが、この手間を省略するのに なんかオプションはあるのか探っ …

no image

net-snmp snmpd.logの設定を追加、変更

某VPSサービスで借りた仮想サーバーでsnmpdを動かしたところ、ログがどこにも出ていなかったのでログ出力設定を追加。 たまたまだと思いつつ、設定状況は環境によって様々だと思うので、ひとまず要点をいろ …

[AWS]ただのメモ:rightscaleのCentOSでなぜかyum updateが動かない、と思ったら

EC2にてrightscaleのCentOSにセキュリティパッチをあてるため”yum update”をしておこうとしたら、”No Packages marked f …