- 締切済み
favicon.icoがIEで表示されない
Chromeでは問題なく表示されているが、ソース内のリンクをクリックすると、ダウンロードされてしまう。 一方、IEでも問題なく表示されている他社のfaviconをchromeのソース内のリンクをクリックすると、ダウンロードではなく、ブラウザ上に表示される。 試しに、他社のfaviconを自分のテストサーバにアップしてみると、ダウンロードされた。 これは、「テストサーバ上」という理由なのでしょうか。 IEで自社のfaviconを表示させようとすると、文字化けしたテキストの羅列が表示されている。 Favicon.ico自体に問題があるのでしょうか。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- chie65536(@chie65535)
- ベストアンサー率44% (8742/19841)
>404ページ表示のためにすでにある.htaccessに1行追加してみたのですが、変わりありませんでした。 「AddTypeの大文字と小文字を間違えない」、「書き換えた.htaccessファイルをサーバーに転送する際に、必ずテキストモードで転送する」という点に注意して下さい。 「.htaccess」と言うファイルを転送する場合、FTPクライアントによっては「テキストファイルの拡張子じゃないから、バイナリファイルだ」と判断して、バイナリで転送してしまう場合があります。 .htaccessをうっかりバイナリで転送してしまうと、改行コードの違いで、サーバーが.htaccessファイルの内容を正常に読み込めない状態になってしまうので、注意して下さい(.htaccessの1行目だけ認識され、2行目以降に何を書いても2行目以降が無視されてしまう状態になってしまいます) なお、WEBサーバーの種類によっては、.htaccessでのAddTypeをサポートしてない場合があります。 その場合は、サーバーのコンフィグファイルを書き換えてサーバーを再起動するなど、別の方法で対処する必要があります。 なので、.htaccessにAddTypeを足してもうまく行かない場合があります。 うまく行かない場合は、使っているWEBサーバーの種類とバージョンに合わせた対処方法で対処して下さい。
- chie65536(@chie65535)
- ベストアンサー率44% (8742/19841)
拡張子「ico」は、ファイルタイプのデフォルトが未設定なので「クリックした場合の挙動」は「未定義」です。 WEBサーバーには「この拡張子は、このMIMEタイプである」と言うのが、予め設定してあります。 拡張子とMIMEタイプ http://www.tohoho-web.com/wwwxx015.htm 例えば、WEBサーバー上に「test.jpg」と言うファイルを置くと、WEBサーバーが「jpgと言う拡張子なので、このファイルが要求されたら、データに先行して『image/jpeg』と言う情報を送り出そう」と判断し、そういう情報を付加して送り出します。 閲覧しようとしてリンクをクリックしたブラウザは、データに先行して送られて来る「image/jpeg」などの「MIMEファイルタイプ」を判断して、画像として表示するか、文字としてテキストを表示するか、バイナリファイルとしてダウンロードするか、最適な処理を決めます。 色々なブラウザで、クリック時の挙動が異なるのは「WEBサーバーで、icoファイルに対し、ちゃんとしたMIMEファイルタイプを設定してない」からです。 そういう状態になっていて、WEBから「知らないMIMEファイルタイプ」で送られて来た場合、ブラウザがどう挙動するかは決まっておらず、ブラウザが好きに動いて良いという事になっているので、ブラウザを変えると「動きが違う」という事になります。 .icoファイルが存在するフォルダの.htaccessファイルに AddType image/x-icon .ico の1行を追加して下さい。 詳しくは http://network.station.ez-net.jp/server/web/apache/favicon.asp を参照。
- aokii
- ベストアンサー率23% (5210/22062)
IEでは「Windows icon形式」以外では表示する事が出来ません。 通常は、ツールを利用してwindowsIcon形式に変換します。 例えば、画像ファイルを@icon変換というツールを利用してwindowsIcon形式に変換します。
お礼
アドバイスいただきありがとうございました。 @icon変換を使って作成したのですが、だめでした。 作成するのに、何か注意点があれば教えていただけますか。
お礼
ご丁寧に説明していただき、ありがとうございます。 404ページ表示のためにすでにある.htaccessに1行追加してみたのですが、変わりありませんでした。 .htaccessに書く命令はいくつあっても問題ないのでしょうか。 書く時の注意点があれば教えていただけますか。 よろしくお願いします。