一覧ページのサムネイル画像をbase64エンコードしてHTMLファイルに埋め込むことにより、リクエストの数を大幅に削減し読み込み速度の改善を、と思ったんですが、まだ利用者が5%ぐらいいるIE6だと表示できないため断念しました。
base64エンコードの処理は最初だけある負荷が程度かかるものの、次回更新までキャッシュを使うため、ほぼ問題なし。
ローカルテスト時は読み込みが早く、特に自動読み込み版での体感速度はかなり良かったです。
5分位で書いて詳しく動作確認してないけど、PHPで画像のbase64化を行う関数を一応公開します。
function img_to_base64( $path ){
if( is_file( $path ) ){
$mime = getimagesize( $path );
$base64text = base64_encode( file_get_contents( $path ) );
return 'data:'. $mime['mime'] .';base64,'. $base64text;
}else{
return $path;
}
}
imgタグのsrcに入れる文字列を引数に入れるとmimeタイプをあわせてbase64エンコードされたものが返っています。ファイルが無い場合はそのまま返します。PHPファイルと画像ファイルの位置関係でパスの調整が必要かもしれません。
,一応見送ったものの、表示速度的にもサーバー負荷的にもかなりいい策なので、そろそろ完全にIE6ユーザーを捨てる決断が必要です。
![【10アンカー】6 @ 山ガール(笑)が大ブーム 山ガール専用の「山スカート」や情報サイトまで登場 [1]](http://respic.net/img/201009/06/tb120-130328807663-8955a3c7.jpg)
![【12アンカー】1 @ 「カエルがネズミを食べる。」馬鹿な!哺乳類が両生類に負けるなんてそんな事があってたまるか! [1]](http://respic.net/img/201011/03/tb120-155109936902-22534253424532453.jpg)
![【9アンカー】251 @ 佐々木希って、かわいいか?吉沢明歩のがかわいいだろ? [1]](http://respic.net/img/20100130/tb120-010939-kawd00242pl.jpg)