web-dev-qa-db-ja.com

ファビコンを検索しないようにブラウザに指示できますか?

ファビコンがない/必要のないウェブサイトがあります。

/favicon.icoを探しているリクエストを無駄にしないようにブラウザに指示する方法はありますか?

ログをフィルタリングするつもりはありませんが、次のようなクライアント側の何かです:

<link rel="shortcut icon" href="about:blank" />

それはうまくいくように見えますが、私は包括的なテストを行う立場にありません(そして検索エンジンは役に立たないです)。

これが有効な方法であるかどうかを確認したり、適切な代替手段を提供したりできますか?

更新:さらなる調査の結果、は機能しない(少なくともChromium 18では非ローカルドメイン)。部分的な解決策は、data: URLを使用してbase64の空白画像を提供することです( ここの例 ):

<link href="data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAF0lEQVRIx2NgGAWjYBSMglEwCkbBSAcACBAAAeaR9cIAAAAASUVORK5CYII=" rel="icon" type="image/x-icon" />

これは機能していますが、2つの欠点があります。

  • データURLをサポートしていないブラウザではおそらく失敗します。
  • その結果、ファビコンはまったくなくなります。つまり、ブラウザのデフォルトアイコンが非表示になります。
18
Peter Boughton

さて、たまたまインストールした偶然のブラウザの束でテストを行いました WiresharkシンプルなWebページ タグを含んでいます

<link rel="shortcut icon" href="about:blank">

これまでの結果は次のとおりです。

  • Chromium 18.0Ubuntu Linuxの場合:Works。/favicon.icoのリクエストなし、いいえファビコンが表示されます。

  • Google Chrome 21.0Windows XPの場合:Works。

  • Ubuntu Linux上のFirefox 15.0.1一貫性のない動作。どうやら、Firefox firstページのロード時に、/favicon.icoのファビコンを表示せず、HTTPリクエストも作成しません。ただし、ページがsecond時間にアクセスされると、/favicon.icoがロードされて表示されます。

  • Firefox 15.0Windows XP:一貫性のない動作、上記と同じ。

  • Opera 10.10Ubuntu Linuxの場合:動作しません。/favicon.icoをリ​​クエストしますが、表示されません。

  • Konqueror 4.8.4Ubuntu Linux:Works。

  • rekonq 0.9.1Ubuntu Linux:Broken。/about:blankのリクエストを試みますサーバーから。

  • Windows XP上のInternet Explorer 8.0Inconsistent(?)。最初は動作していますが、ある時点で/favicon.icoが要求されました。おそらく、別のページにアクセスして[戻る]ボタンを使用した後です。何らかの理由でIEが実際にテストファビコンをレンダリングすることを拒否しているという事実により、テストはやや複雑でした。さらにテストが必要です。

その他の注意事項:

ブラウザはファビコンを積極的にキャッシュする傾向があります。ブラウザのキャッシュをクリアする通常の方法は、常に機能するとは限りません。一貫した再現性のある結果を得るには、真新しいサンドボックスプロファイルでブラウザーを実行する必要がありました。特に、少なくともreconqは、キャッシュされている場合、同じサイトの別のページからの(デフォルトではない)ファビコンの表示にフォールバックします。

9
Ilmari Karonen