Как добавить * .less в IIS 7.0? - PullRequest
       39

Как добавить * .less в IIS 7.0?

40 голосов
/ 06 сентября 2011

Я установил виртуальное приложение на моей локальной машине, и оно работает, но оно не загружает файл CSS. И я использую lessCSS для стилизации моего приложения, и я думаю, что причина не загрузки здесь CSS заключается в том, что таблица стилей LESSCSS использует расширение .less.

Так что же делать, чтобы прочитать расширение * .less?

Ответы [ 3 ]

76 голосов
/ 06 сентября 2011

Нет необходимости добавлять обработчик. Просто добавьте MIME-тип (теперь известный как Internet Media Type) для .less и установите MIME-тип на text/css.

Веб-серверы видят расширение запросов (как расширения файлов). Если они знают расширение, они обслуживают файл и добавляют поле заголовка HTTP, чтобы указать, в каком формате находится содержимое файла. Например, когда они обслуживают статические файлы HTML, они добавляют поле заголовка Content-Type: text/html. Таким образом, браузеры могут понять, какое приложение использовать для обработки тела ответа.

Если веб-серверы не знают расширения запроса, они ищут, установлено ли на них уже другое приложение, которое знает расширение. Если есть другое приложение, они позволяют этому приложению обслуживать файл.

Вы можете подумать об этом примере, чтобы полностью понять, что происходит:

Вы идете в ресторан, (вы HTTP request). Вы просите пиццу (пицца является продолжением). Шеф-повар знает, как подавать пиццу, поэтому она служит вам.

Теперь представьте, что вы идете в тот же ресторан в другой раз и попросите Bomyhoor (поддельная еда). Шеф-повар не знает, как готовить и подавать это. Он / она просит других поваров узнать, есть ли на кухне кто-то еще (кухня - это веб-сервер), кто знает, как это готовить? Если кто-то знает, как готовить Boomyhoor, то он / она служит вам.

Теперь, подумайте, что вы идете в другой раз, и на этот раз попросите Graboori. Шеф-повар уже знает (из словаря), что Graboori - это еще одно название для пиццы. Поскольку он знает, как готовить пиццу, он просто служит этому.

Когда вы добавляете MIME-тип на веб-сервер, вы просто сопоставляете расширение запроса с типом файла.

1 голос
/ 26 ноября 2016

Вы должны добавить

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

на ваш Web.config

образец:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <staticContent>
        <mimeMap fileExtension=".less" mimeType="text/css" />
    </staticContent >
    <rewrite>
      <rules>
        <rule name="WordPress: http://YourSite.com" patternSyntax="Wildcard">
          <match url="*" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="index.php" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
  <system.web>
    <authentication mode="None" />
  </system.web>
</configuration>
0 голосов
/ 03 марта 2015

Принятый ответ просто исправляет ошибку менее 406. Кто-то может столкнуться с ошибкой 404, описание того, как эту ошибку можно исправить, можно найти здесь: https://stackoverflow.com/a/28828628/3936440

...