LESS文件无法加载(404)

48
我正在使用IIS 7.5,但无法加载less文件,因为它会出现404错误。
HTML:
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>Less Tutorial</title>
        <link rel="stylesheet/less" href="style.less" />
        <script src="less-1.0.41.min.js"></script>
    </head>
    <body>        
        <div id="container">
            <a href="#">My Anchor</a>
        </div>
    </body>
</html>

LESS:

@primary_color: green;

#container {
    width: 200px;
    height: 200px;
    background: @primary_color;
}
5个回答

102

在使用 Asp.Net 时,您可以在 web.config 中添加 MIME 类型:

<system.webServer>
  <staticContent>
    <mimeMap fileExtension=".less" mimeType="text/css" />
  </staticContent >
</system.webServer>

2
@Marthijn:因为当使用set text/less时,IIS可能会阻止向浏览器发送文件,并显示以下信息:“由于浏览器不接受文件扩展名,因此无法显示资源”。 - Michał Zalewski
1
这可以通过Diogo的解决方案在服务器上完成。如果您只是在本地主机上运行某些内容而不通过IIS,则可以进行快速修复。 - Jon Harding
是的,我尝试手动在Web.Config中添加它,但没有成功。通过IIS管理器上的处理程序,我可以添加它,并且完美地工作了。类型为dotless.Core.LessCssHttpHandler,dotless.Core,名称为dotless*.less文件。 - Felype
@Felype 我认为你试图做的是不同的事情。这里的问题是关于提供.less文件,而不是执行处理程序来编译less到css。 - Giorgio Bozio
一个普通的.less文件在浏览器样式表中无法正确解释。除非他明确说明了像CDN或静态服务之类的内容,否则我相信他的意图是将Less文件作为其内容的样式,而不是静态纯文本内容。但我认为这只是我理解和你的理解之间的差异,没有个人恩怨。 - Felype
显示剩余2条评论

8
使用WebMatrix时,请前往“Documents\IISExpress\config”并打开“applicationhost.config”,然后在“staticContent”部分下添加行mimeMap fileExtension=".less" mimeType="text/css"。希望这能有所帮助。

我已经尝试过了,但问题仍未解决。配置文件的部分内容如下:code<location path="onepager.Server"> <system.webServer> <security> <authentication> <anonymousAuthentication enabled="true" /> <windowsAuthentication enabled="false" /> </authentication> </security> <staticContent> <mimeMap fileExtension=".less" mimeType="text/css" /> </staticContent> </system.webServer> </location> code - AKS
@AKS,staticContent 标签已经存在一些 mimeMap 标签,请搜索并添加 **<mimeMap fileExtension=".less" mimeType="text/css">**。 - Geoffrey

2

在我的MVC 5应用程序中,我尝试了许多方法都无法解决这个问题。最终,我安装了VS 2013的Web Essentials,并利用内置的LESS编译器。每次保存LESS文件时,它都会生成相应的CSS。在我的布局中,我只需指向CSS文件并解决了我的问题。


谢谢...这在VS 2017中也适用...请注意,保存文件并不会自动编译它。相反,您需要右键单击它,然后从上下文菜单中选择编译文件。 - Anthony Griggs

0

我现在已经多次遇到这个错误,尽管添加了MIME类型,但仍然一遍又一遍地出现相同的错误。

后来我发现,添加MIME类型只能修复406错误代码,而不能修复404错误。我认为这与权限有关。

因此,我尝试以管理员身份打开文件(例如notepad.exe -> 以管理员身份运行),并用自己覆盖文件。这对我起作用了。


-2

我无法加载style.less文件。 - Diogo Cardoso
你的意思是无法加载style.less文件吗?是指没有任何更改还是不知道如何加载它? - Christophe
1
给我一个错误,就像文件不存在一样。我将编辑我的问题,附上我正在使用的代码和相应的错误。 - Diogo Cardoso
你调用 .less 样式表的文件路径是什么? - Christophe
所有文件都在以下目录中:C:\inetpub\wwwroot\less - Diogo Cardoso

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接