C#ASP X-CONTENT-TYPE-OPTIONS-Internet Explorer不显示PNG文件

本文关键字:PNG 文件 显示 X-CONTENT-TYPE-OPTIONS-Internet Explorer C#ASP | 更新日期: 2024-09-12 13:36:15

为了在运行OWASP ZAP后更好地保护我们的网站应用程序,建议将标题X-CONTENT-TYPE-OPTIONS设置为NOSNIFF,我已经这样做了。

然而,由于这样做,任何本地托管的PNG文件都不再显示在Internet Explorer(各种版本)上,并且响应中有图像数据(IE Developer工具将显示与响应相关的图像)。

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

考虑到这是已知MIME类型的问题,在APPLICATION_BEGINREQUEST阶段,我尝试检查PNG请求并设置HttpContext.Current.Response.ContentType="images/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>

但这也没有改变任何事情。

我想这个问题一定有解决办法,但到目前为止我还没找到!

有人能解决这个问题吗?

提前感谢!

C#ASP X-CONTENT-TYPE-OPTIONS-Internet Explorer不显示PNG文件

在快速检查IIS实例上的MIME类型后,我决定继续部署应用程序,而不更改web.config,也不使用ContentType代码。

低看,一切都是在IE渲染它应该是。

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

希望这能让某人在未来免于任何漫长的调查!