2011-03-25 92 views
1

我需要一些帮助,显示我的网站上的图标,同时使用ASP.NET MVC。ASP.net MVC图标不显示

问题总之是,每当一个请求是

请求永远不会被送达作出。火狐说:

内容编码错误 - 你 试图查看该页面无法显示 ,因为它使用的压缩无效或不支持 形式。

我曾尝试使用以下忽略航线战略忽视的路线,显然不是所有在同一时间;-)

routes.Add(new Route("favicon.ico", new StopRoutingHandler())); 
routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" }); 
routes.IgnoreRoute("Content/{file}", new { file = @".*" }); 

我可以证实,这是忽略了路线,因为我的子类控制器工厂,它不会呼叫CreateController 踢球者是这样的,我也有一个PNG版本的文件,它得到了服务。我还与小提琴手检查它,每当我试图要求ICO直接通过网址我得到一个弹出窗口,上面写着这样的:

神奇的数字在gzip头不正确 。确保你传递了一个GZip流 。

所以它似乎以某种方式IIS试图将其发送回压缩? 如何阻止此行为/使其工作?

任何见解?

UPDATE:

我想通了,web.config中有一个自定义的HttpModule与成为物理文件处理,并试图压缩文件输出。当你有图像文件时,这不起作用。 :-)

回答

2

为什么你将它作为路线添加?

只需添加到您的母版页标题:

<link rel="shortcut icon" media="all" type="image/x-icon" href="<%= Url.Content("~/favicon.ico") %>" /> 
+0

我不会将其添加为路线,我试图忽略它。我的母版页中已经有了这个html链接元素。这才是重点。该图标没有被返回,不知何故,当它被请求浏览器不知道它回来的时候。 – Jose 2011-03-28 12:37:53