使用HttpHandler和LESS的MVC4 IgnoreRoute

时间:2013-06-09 21:22:40

标签: asp.net-mvc-4 routes less httphandler

我正在推出一个新的MVC4网站并遇到重大问题,我相信路线。

这一切都在Cassini本地工作,但不在我的生产WIN 2012服务器上。

似乎已经一次又一次地回答了类似的问题;我要么错过了明显的,要么走错了轨道。

我看到的两个问题是我的LESS CSS没有加载。像bootstrap这样的其他CSS正在加载正常。我认为这可能是一个问题,MVC试图处理js请求少,但来自同一个Scripts文件夹的其他js工作正常。我整天都在尝试各种IgnoreRoutes无济于事。目前:

public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("Content/{*pathInfo}");
        routes.IgnoreRoute("Scripts/{*pathInfo}");
        RouteTable.Routes.IgnoreRoute("{resource}.css/{*pathInfo}");
        RouteTable.Routes.IgnoreRoute("{resource}.js/{*pathInfo}");            

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("ImageDisplay.aspx/{*pathInfo}");
        routes.IgnoreRoute("elmah.axd");
        routes.IgnoreRoute("FeedFiles/{*pathInfo}");
...

不确定它是否已被置之,但我有一个图像处理程序,ImageDisplay.aspx。

<httpHandlers>
  <add verb="*" path="ImageDisplay.aspx" type="BK9.PL.Utility.ImageHandler, BK9.PL" />
</httpHandlers>

这也失败了404,但在本地工作正常。

我错过了什么?

更新----------------------

原来图像处理程序是IIS 8的错误配置 - 我把它配置在system.web部分 - 将它移动到system.webserver重新启用了。

当我开始怀疑时,挖掘路线完全是错误的道路。问题越少,结果就越无问题。

这是无点1.3.1.0的正确构建后编译:

del "$(ProjectDir)Content\BK9.css"
"$(SolutionDir)packages\dotless.1.3.1.0\tool\dotless.compiler.exe" -m "$(ProjectDir)Content\BK9.less" "$(ProjectDir)Content\BK9.css"

删除最后一个css,并编译一个新的缩小版本。看起来像需要删除命令后的换行符。

0 个答案:

没有答案