apacheのext_filterモジュールで画像サイズ変換
画像の自動変換をしたくて、apacheにそんなモジュールがないか探していたら「mod_ext_filter」でconvertに通せばなんとかなりそうだったのでやってみた
.htaccessでは設定できないのでhttpd.confとかのサーバ設定ファイルに記述して再起動する必要がある
httpd.confに以下を追加
ExtFilterDefine convert10per mode=output cmd="/usr/bin/convert -scale 10% - -" ExtFilterDefine convert200per mode=output cmd="/usr/bin/convert -scale 200% - -" <Location /image/10per> AddOutputFilterByType convert10per image/jpeg image/gif image/png </Location> <Location /image/200per> AddOutputFilterByType convert200per image/jpeg image/gif image/png </Location>
で、/image/10perにアクセスすると10分の1のサイズで表示される
/image/200perにアクセスすると倍のサイズで表示される
これをうまいこと使えば色々と応用が利きそうだなぁ
問題は都度変換をかけて出力することに対するコストかな