favicon.icoをエラーログに残さず、ファイルIOも発生させない方法

総閲覧回数:4,419,446回 / ブログ拍手:2,940
作品DB等各サービスの機能追加情報や、技術系・面白系記事を中心に提供。
記事の投稿は基本Twitterでも告知させて頂いています。
連絡は作品DBの論客の方なら私書、DB外ユーザの方ならメールTwitterで可能です。
アクセス記録[推移 / PV内訳(過去1日 / 過去1週間) / 外部アクセス元 (昨日 / 過去1週間) / ログイン論客足跡]
プロフィール私書(メール)
   /   /送済
評価(一覧   /)
投票   /共:   /
ファン登録
作品/情報/
DB構築()
ブログ
[書く]
攻略記事リンク集
My Play List
RSS購読
RSS
表示開始年月
分類
全て
1.このサイトについて
2.作品DB開発/運用
3.ホームページ制作技術
4.Perl
5.C言語 / C++
6.検索エンジン&SEO
7.サッカー
8.自分のこと
9.Linux
10.旅行
11.思ったこと
12.パソコン
13.Berkeley DB
14.その他技術系
15.企画
16.スマートフォン
17.鑑賞
18.皆声.jpニュース
19.インターネット業界
20.運用マニュアル(自分用)
21.技術系以外実用書
22.料理
23.ALEXA
24.アニメ
25.会計
26.漫画
27.設計書
28.色々サイト作成
29.サーバー
30.自分専用
31.生活
32.OP/ED/PV
33.ゲーム
34.DB整備
35.新規開始作品紹介
36.英語圏の話題
37.大道芸
38.映画
39.PHP
40.ダイエット
41.Mac
42.JavaScript
43.MySQL
44.介護
45.作品DB作品追加作業
46.BI
47.Web API
48.パフォーマンス
49.インターネットの活用方法
50.Riak
51.Androidアプリ開発
52.Cassandra
53.スパム
54.写真
55.iOSアプリ開発
56.AWS
57.マーケティング
58.Web漫画
59.法律
60.mongodb
61.開発環境整備
62.Google Apps Script
63.meteor
64.Pentaho
65.Ansible
66.VPS
67.技術書メモ
68.Vagrant
69.Docker
70.dokuwiki
71.Apple Watch
72.Webサービス
73.セキュリティ
74.Elastic Search
75.Wordpress
76.クラウド
77.英語
78.MVNO
79.シンガポール
80.マレーシア
81.海外生活
82.海外旅行
83.創作活動
84.コワーキングスペース
85.プライベート
日記の主な内容
サイト運営/開発
検索エンジン情報
・技術ネタ(Berkeley DB,
Linux, Perl, サイト作成)等

サイト管理
全まとめ
サーバー管理
定期処理状況
開発予定
削除提案
作品追加依頼
OP/ED追加依頼
OP/ED not found
作品提案承認欄

格言 fromスクライド
この世の理は即ち速さ
20年かければ馬鹿でも
傑作小説を書ける

助けられたら助け返す
それが俺のルール

強くなるには
一番弱い考えをする事だ
そしてその考えに反逆する




<=次の記事 情報DBの関連作品の並びに開始日順追加&デフォルトを開始日順(最新順)に
=>前の記事 誤って削除してしまった日記の分類の手動復旧手順

1.
2009/07/25 Linux > Apache > favicon.icoをエラーログに残さず、ファイルIOも発生させない方法」
[この書込みのみ表示(記事URL紹介用) / 編集 / 削除 / トラバ送信 / 共有分類に追加(タグ付け)]拍手:9個

/favicon.ico
はIEが勝手にリクエストするサイトのアイコンですが、設置していないとapacheのerror_logにnot found errorがひたすら書き込まれていくことになってしまい、可読性・パフォーマンス上問題になります。

対応としては、httpd.confに
Redirect 404 /favicon.ico

<Location /favicon.ico>
ErrorDocument 404 "No favicon
</Location>
とかくことで対応できます。

「Redirect 404 /favicon.ico」でディスクIOを発生させることもなく404反応を返し、
「ErrorDocument 404 "No favicon」でカスタムエラーページを表示することもなくメッセージ表示をしています。

なおaccess_logの方の404の記録を弾くには
SetEnvIf Request_URI "\.ico$" no_log
CustomLog /dev/shm/access_log combined env=!no_log
というように記述することで実現出来ます(上の設定では.icoで終わるものを全て弾いている)。

ちなみに/dev/shm/上(=RAM Disk上)に当日のログを置いているのは、常時書き込みが発生するログファイルはディスク上におかず、メモリー上で書き込ませることでディスクIOの発生を防ぐ為です。
メモリー量はそれを確保出来るだけないと駄目ですが、常時書き込まれるファイルでディスクIOを発生させなくすることでウェブサーバーのパフォーマンスは随分変わります。

コメントする
9個


管理人さん さんのコメント (2009/09/15) [編集/削除(書込み者/所有者が可能)]
どうも初めまして。
拙記事が役に立ったのなら幸いです。
非論客 プロバイダ: 24555 ホスト:24676 ブラウザ: 8281
error_logに出力されるfaviconなしの抑止が出来ずに困っておりました。
Redirectで解決できるという方法が思いつかなかったです。
この記事のお陰で解決でき、感謝しております。


[他の記事も読む]
<=次の記事 情報DBの関連作品の並びに開始日順追加&デフォルトを開始日順(最新順)に
=>前の記事 誤って削除してしまった日記の分類の手動復旧手順


大分類が「Linux」の記事
この論客の記事全て
↑上へ