C#ASP X内容类型选项 - Internet Explorer不显示PNG文件

问题描述:

为了在运行OWASP ZAP后更好地保护我们的网站应用程序,建议将标题X-CONTENT-TYPE-OPTIONS设置为NOSNIFF,我已经完成了。C#ASP X内容类型选项 - Internet Explorer不显示PNG文件

尽管如此,任何本地托管的PNG文件不再显示在Internet Explorer(各种版本)上,并且响应中有图像数据(IE Developer工具将显示与响应相关的图像)。

检查了响应后,我可以看到被请求的MIME类型是image/png,但响应MIME类型是八位字节流。

找到这是已知的MIME类型的问题,在APPLICATION_BEGINREQUEST阶段,我尝试检查PNG请求并设置HttpContext.Current.Response.ContentType =“image/png”;但是响应仍然以八位字节流的形式结束。

 if (HttpContext.Current.Request.Url.ToString().ToLower().Contains(".png")) 
     { 
      HttpContext.Current.Response.ContentType = "image/png"; 
     } 

我也尝试修改应用程序的web.config中加入:

<system.webServer> 
    <staticContent> 
    <mimeMap fileExtension=".png" mimeType="image/png" /> 
    </staticContent> 
</system.webServer> 

...但是这并不会改变任何事情。

我想这肯定有解决方案,但到目前为止我还没有设法找到一个!

有没有人有解决这个问题的办法?

提前致谢!

在对IIS实例上的MIME类型进行快速检查之后,我决定继续部署应用程序,而不进行web.configuration更改,并且没有ContentType代码。

低下,瞧,一切都在IE中呈现,因为它应该是。

因此无论问题是什么,这似乎是与卡西尼问题!

希望这可以节省一个人在未来任何冗长的调查!