- 2008-10-19 (日) 13:50
- Web関連


- 久しぶりにApacheいじった
YSlow for Firebugについて、気にしだしたら、いろいろやりたくなって、Apacheをいろいろいじりました。
ひとつは、ETagについて。
リクエスト対象のファイルが更新されているかどうかを判断する値で、通常Apacheはファイルのタイムスタンプから、自動的にこの値を作成し返すようです。
しかしPHPやCGIの場合は、ファイル自身は同一でも結果が違う場合(例えば日時を取得して、出力が変化するようなケース)があるので、自動的にETagは返さなくなっています。
つまり、PHPやCGIは自前でETagを返すよう、作らなくてはならなくなります。
参考サイトはおなじみの小川さんのところ。エントリーも何度か取り上げた「「条件付きGET」のススメ - Ogawa::Memoranda」です。
以前はMTのダイナミックパブリッシングなら、自動でそこら辺をやってくれてるよって話題でしたね。
あまり複雑なことは考えずに、ひとまず「drry+@-> PHP で Apache 風 ETag の生成」を参考に(というか、そのまま)使ってみました。
もうひとつは、Expiresヘッダについて。
mod_expiresを使って、意外と簡単に設定できました。
これは、結構値を決めるのが難しいですよね。特にPHPコードなんか絶対にこれで処理されちゃ困ります。
さらに、mod_deflateも組み込んで有効にしてみました。
ブラウザーによって対応状況とかあるみたいなのですが、取りあえずあまり複雑にせずにやりました。問題発生してないと良いなぁ。
後、404エラーの処理も手を付けました。もう少し高機能化が可能な気がするんですけどね。
- Newer >: MTSubCatCountをやっつけよう
- < Older: コメント時の動作を追いかける(1)
ping a Trackback
- TrackBack URL for this entry.(1)




スクリプトの読み込みが完了していません。
メールフォーム(Javascriptを使用していません)や、
Twitter経由のCommentでもReplyいたします。ただし返信はブログのコメントとして行う事もあります。