加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET MVC要求我重新验证PNG文件,而不是GIF或JPEG

发布时间:2020-12-16 09:58:57 所属栏目:asp.Net 来源:网络整理
导读:出于某种原因,只要我从application.css文件中引用PNG,就会提示我输入凭据.但是,我可以从我的图像目录中引用GIF,JPEG等,没有任何问题. 我的路线设置如下: public static void RegisterRoutesTo(RouteCollection routes) { routes.IgnoreRoute("{resource}.ax
出于某种原因,只要我从application.css文件中引用PNG,就会提示我输入凭据.但是,我可以从我的图像目录中引用GIF,JPEG等,没有任何问题.

我的路线设置如下:

public static void RegisterRoutesTo(RouteCollection routes) {

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("elmah.axd");
        routes.IgnoreRoute("{*favicon}",new { favicon = @"(.*/)?favicon.ico(/.*)?" });

        routes.MapRoute(
            "Default","",new { controller = "Home",action = "Index"}  // Parameter defaults
        );

        routes.MapRoute(
            "Session","{action}",new { controller = "Session" },new { action = "(login|logout|register)" }
        );

        routes.MapRoute("CatchAll","{*catchall}",new { controller = "Error",action = "NotFound" });
    }

在我的CSS中,我有这个:

.iconLocationLarge { background-image: url(../images/icon_vcarea_48x48.png) !important;}
.iconVCLarge { background-image: url(../images/tb-btn-sprite.gif) !important;}

问题是如果我使用PNG而不是GIF,我会被提示再次进行身份验证.为什么?

解决方法

IIS可以直接提供内容,而无需将请求传递给ASP.NET.我怀疑你的情况是IIS设置为服务GIF和JPG而不是PNG.有关该主题的讨论,请参见例如 http://mvolo.com/blogs/serverside/archive/2006/11/10/Stopping-hot_2D00_linking-with-IIS-and-ASP.NET.aspx.另见 http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/4c840252-fab7-427e-a197-7facb6649106.mspx?mfr=true.

假设这是IIS6,从管理工具打开IIS管理器,右键单击本地计算机节点,单击MIME类型,检查PNG是否注册为“image / png”.您还可以在单??个网站级别配置此项.

确保没有其他过滤器可能导致问题,例如UrlScan ISAPI过滤器.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读