9

asp.net mvc Webアプリケーションがあり、favicon.icoを使用しています。これで、アプリケーションとしてIIS 7に移動すると、ファビコンに完全なアドレスを入力しようとしても、ファビコンが表示されなくなります。アイコンはまだそこにあります。フルアドレスはブラウザで機能してアイコンのみを検索しますが、アプリケーションのマスターページ内では機能しません。コードは標準であり、他のいくつかのアプリと同じですが、そこでは機能します。

<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title>
    <link rel="shortcut icon" href="../../Content/Images/favicon.ico" />
    <link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="../../Scripts/jquery-1.3.2.min.js"></script>
    <script type="text/javascript" src="../../Scripts/Site.js"></script>
</head>

なぜこれが起こるのか、何か考えはありますか?

4

4 に答える 4

8

私の記憶が正しければ、Internet Explorerでは、ファビコンに絶対URLが必要です。それが役に立たない場合:

  • たぶんIISは間違ったコンテンツタイプのアイコンファイルを提供しますか?正しいのはだと思いますimage/vnd.microsoft.icon。IIS 7でコンテンツタイプを設定する方法については、このページを参照してください。
  • このページにはいくつかの追加のヒントがあります
于 2010-01-04T11:44:37.530 に答える
6

リンクタグを次のように変更してみてください。

<link rel="shortcut icon" href="/Content/Images/favicon.ico" type="image/x-icon" />
于 2010-01-04T11:47:13.317 に答える
2

ブラウザはファビコンについて非常に気難しいです。彼らは常に更新時にそれらを取得するわけではなく、しばしば彼らは自由にそれらをスキップします。

最善のアプローチは、ファビコンをドキュメントルートに配置して、リンクがになるようにすることです/favicon.ico。また、それが実際のMicrosoft形式の.ICOアイコンファイルであることを確認してください。..ここで行うように、親ディレクトリを使用してパスを検索すると、問題が発生します。

正式なクロスサーバーとブラウザの標準はありません。詳細については、http: //en.wikipedia.org/wiki/Faviconを参照してください。

于 2010-01-04T11:49:16.543 に答える
2

追加してみてください

<link rel="shortcut icon" href="<full path to favicon.ico>" />

タグの後の最初の行として<head>、これはChromeとIIS7を搭載したIE10で機能しました。

コンテンツタイプIEとChromeを分離するためのDOCTYPEファイルがサイトに複数ないことを確認してください。確認する1つの方法は、ソースコードをチェックして、ファビコンリンクが<head>タグの下に本当にあるかどうかを確認することです。

他のすべてが失敗した場合は、ブラウザのキャッシュをクリアして、favicon.icoのファイル権限を再確認することをお勧めします。これには、ワールド読み取りアクセス権が必要です。

于 2015-04-30T17:10:03.703 に答える