web-dev-qa-db-ja.com

IE

一部の画像はIEでの読み込みに失敗します。

DOM7009: Unable to decode image at URL: '[some unique url]'.

URLはsites/default/files/styles/image/image_name.jpg?itok=RANDTOKENに設定されています

.htaccessのヘッダーを削除してエラーを修正できます

Header always set X-Content-Type-Options nosniff

しかし、それは正しい解決策ではないようです。なぜこれがこのように動作するのですか?

3
John

「X-Content-Type-Options nosniff」はこの種の問題を回避するため、これはサーバー上のMIMEタイプ(またはコンテンツタイプ)の構成の問題であると私は思います。そのヘッダーは、サーバーの応答からMIMEタイプ情報を抽出しないようにInternet Explorerに指示しています。

最近、IEはサーバーから報告されるMIMEタイプに関してIE 10以降)を非常に許容していません。サーバーがJpegsがテキストまたはpngであると報告している場合、たとえばInternet Explorer拡張子が「jpg」などのよく知られた拡張子であっても、レンダリングに失敗します。

ApacheでのMIMEタイプの追加/修正

サーバーから報告されたMIMEタイプを修正するには、さまざまな方法があります。

.htaccess(サーバー構成をオーバーライドします)

.htaccessファイルを編集するだけで行き詰まっている場合は、AddType image/jpeg jpeg jpg jpeに追加して、サーバーで発生していることをすべてオーバーライドします。

mime.typesまたはhttpd.conf(サーバー構成を実際に修正)

サーバーへのフルアクセス権がある場合は、サーバー上で「mime.types」ファイルを見つけて(存在する場合)、jpegがどこにも定義されていない場合は「AddType」行をhttpd.confファイルに追加してください。 "jpg"拡張子または "jpeg" MIMEタイプがこれらのファイルのいずれかにすでに存在し、正しく構成されていない可能性があります。

Apacheを再起動すると、問題が解決したかどうかを確認するときに、構成の変更が確実に行われます。

こちらもご覧ください

この問題が解決しない場合は、スタックオーバーフローの別の質問もあります: https://stackoverflow.com/questions/27934411/images-failing-to-load-in-ie-with-dom-7009-error -unable-to-decode-in-console 多くの代替原因があります。

5
Weston Wedding