Jenis peringatan MIME di chrome untuk gambar png


115

Baru saja menjalankan situs saya di chrome dan ternyata muncul dengan peringatan ini untuk setiap gambar .png saya:

Resource interpreted as image but transferred with MIME type application/octet-stream.

Adakah yang pernah melihat ini sebelumnya?

Salam


Ini juga terjadi pada saya, tetapi hanya pada mesin dev saya. Apakah Anda pernah menemukan penjelasannya?
BrianFinkel

Apakah ada cara untuk mengubah tipe MIME di Cassini? Tampaknya mengabaikan <staticContent>pengaturan di <system.webServer>bagian di web.config.
melintasi

1
mengapa saya tidak bisa menjadi orang dengan 78 suara positif untuk masalah yang sama? selalu terlambat ....
Scott Selby

2
hampir terlambat 2½ tahun; o)
Muleskinner

Saya baru saja menemukan Anda dapat menahan tombol kontrol dan memilih Kesalahan, Debug dan Peringatan saja. Dengan cara ini log Anda tidak berantakan dengan kesalahan jenis mime saat Anda melakukan debug, tetapi Anda melihat yang lainnya. Sangat berguna.
Pengacara Setan

Jawaban:


84

Saya mengalami ini saat menjalankan aplikasi ASP.NET WebForms menggunakan ASP.NET Development Server.

Saya menduga hal serupa akan terjadi jika Anda menggunakan IIS Express sebagai server Anda juga (VS 2010 SP1).

Saya 'menyelesaikan' masalah saya secara lokal dengan mengedit pengaturan proyek (di bawah Web) dan mengubah dari ASP.NET Development Server ke IIS di komputer lokal saya. Saya dapat melihat bahwa PNG sudah didefinisikan dengan benar sebagai jenis gambar MIME dan memang ketika saya menekan server IIS lokal saya, itu menyajikan file dengan jenis yang benar.


11
Menggunakan IIS Express, tidak ada peringatan jenis MIME pada gambar PNG. Ini pada dasarnya adalah standar IIS 7.5 dalam bentuk yang lebih portabel (dan IIS standar tidak memiliki masalah dalam melayani PNG). Saya baru saja membuat proyek baru, mengonfirmasi peringatan di Cassini (server dev), mengaturnya ke IIS Express dan mengonfirmasi bahwa peringatan itu hilang.
patridge

Hal aneh yang saya temui adalah saya telah membuat aplikasi MVC ASP.NET 4 dan berfungsi dengan baik saat memuat file png di Cassini. Saya meningkatkan aplikasi MVC ASP.NET 1 hingga 4 dan saya mengalami masalah ini di Cassini dengan file png yang sama. Ada ide?
MattB

1
@MattB - Saya sarankan untuk membandingkan file konfigurasi (csproj dan web.config) antara proyek MVC4 baru Anda dan yang ditingkatkan satu per satu dalam editor teks. Tebakan pertama saya adalah ada referensi perakitan atau serupa yang tidak ditingkatkan secara otomatis. Jika lebih rumit dari itu, Anda mungkin ingin membuka pertanyaan baru dan menyertakan lebih banyak detail.
Stefan Mohr

@StefanMohr Terima kasih atas tanggapan Anda, Maaf atas keterlambatan kembali. Saya melakukan perbandingan keduanya dan tidak menemukan apa pun yang tampak luar biasa. Saya bahkan melangkah lebih jauh dengan membuat perubahan yang diperlukan pada csproj dan web.configs untuk membuatnya identik dengan proyek ASP.Net MVC 4 yang baru dibuat, tidak beruntung. Pada akhirnya, saya baru saja membuat proyek baru dan memindahkan semuanya ke proyek baru.
MattB

Situs web dihosting di Azure dan saya mendapatkan kesalahan yang mengganggu ini saat mengemas konsol saya.
Shimmy Weitzhandler

4

Peringatan ini memberi tahu Anda bahwa server web Anda tidak dikonfigurasi untuk mengirim data meta jenis MIME yang benar untuk gambar PNG. Anda mungkin harus berkonsultasi dengan administrator untuk server web Anda dan meminta mereka untuk menyetel pemetaan MIME yang benar


3
@JimG Jika Anda adalah administrator server web, Anda mungkin akan menemukan jawabannya di situs saudara untuk webmaster
Rowland Shaw

+1 Ini adalah jawaban yang paling deskriptif dan berguna. Tidak tahu mengapa terlalu banyak suara negatif.
Sir Crispalot

@Tokopedia Jika Anda adalah administrator, Anda akan mengatakan server web apa yang Anda gunakan, atau bertanya di situs webmaster
Rowland Shaw

Setuju, jawaban yang paling berguna. Tidak mengerti @JimG. suara negatif.
Anoyz

4

Saya menambahkan tipe seperti ini di .htaccess (AddType image / type extention) mis

AddType image/png cur
AddType image/svg+xml svg svgz

2

Tentu saja solusi di atas sempurna. Hanya untuk menghindari peringatan dan untuk konsol yang bersih saya lakukan setelah perubahan dalam kode saya. (itu juga hanya untuk ASP.NET Development Server) Saya menulis handler tambahan untuk ini:

PNGHandler.cs

class PNGHandler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    { 
       if(context.Request.HttpMethod == "GET") 
       {
             string requestedFile = context.Server.MapPath(context.Request.FilePath);
             FileInfo fileinfo = new FileInfo(requestedFile);
             string contentType = "";
             if (fileinfo.Exists && fileinfo.Extension.Remove(0, 1).ToUpper() == "PNG")
             {
                   contentType = "image/png";
                   context.Response.ContentType = contentType;
                   context.Response.TransmitFile(requestedFile);
                   context.Response.End();
              }
         }
    }
}

Dan menambahkan Http Handler di web.config di bawah system.web

<system.web>
 <httpHandlers>
 <add path="*.png" verb="*" type="PNGHandler" />
 </httpHandlers>
</system.web>

0

Cara tercepat mengatasi spam yang saya temukan adalah dengan menggunakan tombol CTRL untuk memilih Kesalahan, Peringatan, dan Debug, bukan semuanya.

Semua: masukkan deskripsi gambar di sini

Kesalahan, Peringatan, dan Debug: masukkan deskripsi gambar di sini


0

Saya telah memecahkan masalah ini dengan mengaktifkan Konten Statis di Panel Kontrol > Program dan Fitur > Mengaktifkan atau menonaktifkan fitur Windows > Komponen IIS > Layanan Web Seluruh Dunia > Fitur HTTP Umum

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.