さくらサーバーVPSに乗り換えて、エラーログをチェックすると、「/var/www/html/favicon.ico がありません」というエラーが大量発生していました。/var/www/html/apple-touch-icon-precomposed.pngなども存在しないとのエラーです。パフォーマンス低下と気持ち悪さから対策を施しました。
エラー:/var/www/html/favicon.ico なし
さくらVPS(仮想プライベートサーバ)に変えて、7月から突然リソース情報CPUの負荷が2倍になっていることを発見。トラフィックは対して変化がないのになぜだろうと思い、エラーログを確認してみました。
さくらVPSでWebサーバーはngnixを利用していますので、/var/log/nginx に保存してあるエラーログのファイルをダウンロードしました。
そうすると、大量に以下のファイルが存在しないというエラー発生を確認。
■ /var/www/html/apple-touch-icon-precomposed.png
■ /var/www/html/favicon.ico
■ /var/www/html/robots.txt
原因
どうやら、ブラウザによっては、投稿記事にアクセスしてもトップディレクトリ[favicon.ico]を[/var/www/html/]へ読みに行くらしいのです。それで存在しないので、「No such file or directory」つまり、そのようなファイルもディレクトリも存在しません。というエラー記述されてしまっています。(参考:のぶさんのIT界で生きる道)
[/var/www/html/apple-touch-icon-precomposed.png]も同様で、iPhoneが我がブログのページをブックマークしたりショートカットアイコンをホームに置く場合に、アイコン[apple-touch-icon-precomposed.png]をトップディレクトリに探しに行くようです。
対策
ほったらかしてもよさそうなですが、気持ち悪いし、パフォーマンスの低下を招きかねませんから、対策を施しました。それは、必要とされるアイコンを作りトップディレクトリ[/var/www/html/]へアップロードしておくことです。
以下のファイルをアップロードしておく必要があるらしい。
- PCのブラウザ用
favicon.ico - iPhone4,4S 用(Retina対応機種)
apple-touch-icon-114×114-precomposed.png
apple-touch-icon-114×114.png - iPad用
apple-touch-icon-72×72-precomposed.png
apple-touch-icon-72×72.png - 他のiPhone や iPod touch用(57x57px)
apple-touch-icon-precomposed.png
apple-touch-icon.png
(*上記の precomposed は光沢なしのアイコンらしい。)
ファビコンやアイコンの簡単作成サイトは以下の通り。
■ Apple用の6つのアイコンはiPhone Style Icon Generatorから。
(114×114はありませんでしたので、128×128で代用します。ただしファイル名は上記の通りで保存。‐precomposedを含むファイルは「NO Glass」を選択。)
作成後、上記の7つのファイルを[/var/www/html/]へアップロードします。
上記の対策でエラーログに記述された「アイコンなし」のエラー続出がでなくなることを願います。
しかし、さくらVPSのコントロールパネルのリソース情報の中のCPU負荷急増の原因が分かりません。
コメント