.less文件在IIS6 + .NET 4 MVC3上静态提供

Mar*_*ool 5 .net iis-6 web-config less asp.net-mvc-3

在.NET 4 MVC3项目中,我在IIS6上运行本地计算机(不要问为什么).它在IIS中有一个适当的通配符映射到v4 aspnet_isapi.dll,对于.less扩展名也是如此.

Web.config定义了这些IIS6和IIS7 httphandler.

<system.web>
  <httpHandlers>
    <add type="dotless.Core.LessCssHttpHandler,dotless.Core" validate="false" path="*.less" verb="*" />
  </httpHandlers>
</system.web>

<system.webServer>
  <handlers>
    <add name="less" type="dotless.Core.LessCssHttpHandler,dotless.Core" path="*.less" verb="*" />
  </handlers>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

冲浪以/path/to/nonexisting.less抛出正确的错误,向我显示LessCssHttpHandler正在运行的堆栈跟踪.

冲浪/path/to/existingfileondisk.less只是按原样下载原始较少的文件.对我来说,似乎现有的静态文件处理程序在这里,虽然我不确定.

我错过了什么(除了新机器;))?

Rod*_*nho 1

我建议您将 .less 文件全部放在一个文件夹中。假设您在根目录下创建了一个名为Less的文件夹。您必须将此行添加到global.asax才能使其工作:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("Less/{*path}");
    ...
}
Run Code Online (Sandbox Code Playgroud)