Предупреждение типа MIME в хроме для изображений png

Просто запустил мой сайт в хроме и, как ни странно, он придумал это предупреждение для каждого из моих изображений .png:

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

Кто-нибудь видел это раньше?

Привет

Ответ 1

Я столкнулся с этим при запуске приложения ASP.NET WebForms с использованием сервера разработки ASP.NET.

Я подозреваю, что что-то подобное произойдет, если вы используете IIS Express в качестве своего сервера (VS 2010 SP1).

Я "разрешил" свою проблему локально, отредактировав параметры проекта (в Интернете) и изменив с сервера разработки ASP.NET на IIS на моем локальном компьютере. Я вижу, что PNG был правильно определен как тип MIME изображения, и действительно, когда я попал на свой локальный сервер IIS, он обслуживал файл с правильным типом.

Ответ 2

Это предупреждение сообщает вам, что ваш веб-сервер не настроен на отправку правильных метаданных типа MIME для изображений PNG. Вероятно, вам следует обратиться к администратору вашего веб-сервера и попросить их установить правильное сопоставление MIME

Ответ 3

Я добавил такие типы, как это .htaccess(AddType image/type extention) т.е.

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

Ответ 4

Конечно, решения выше совершенны. Просто, чтобы избежать предупреждений и чистой консоли, я сделал следующее изменение моего кода. (что тоже для ASP.NET Development Server), я написал дополнительный обработчик для этого:

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();
              }
         }
    }
}

И добавил Http-обработчик в web.config в system.web

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

Ответ 5

Самый быстрый способ найти спам, который я нашел, - это использовать клавишу CTRL для выбора Ошибок, Предупреждений и Отладки вместо всех.

Все: enter image description here

Ошибки, предупреждения и отладка: enter image description here

Ответ 6

Я решил эту проблему, включив Статический контент в Панель управления > Программы и функции > Включить функции Windows или off > Компоненты IIS > Услуги World Wide Web > Общие функции HTTP