webentwicklung-frage-antwort-db.com.de

Hinzufügen von * .less zu IIS 7,0?

Ich habe auf meiner localmachine eine virtuelle Anwendung eingerichtet, die zwar ausgeführt wird, die CSS-Datei jedoch nicht lädt. Und ich benutze das lessCSS , um meine Anwendung zu stylen, und ich denke, der Grund für das Nichtladen der CSS hier ist, dass LESSCSS Stylesheet die Erweiterung .less verwendet.

Was tun, um die * .less-Dateiendung zu lesen?

40
Safran Ali

Es ist nicht erforderlich, einen Handler hinzuzufügen. Fügen Sie einfach einen MIME-Typ (jetzt als Internet-Medientyp bekannt) für .less hinzu, und setzen Sie den MIME-Typ auf text/css.

Webserver sehen die Erweiterung von Anforderungen (genau wie Dateierweiterungen). Wenn sie die Erweiterung kennen, stellen sie die Datei bereit und fügen ein HTTP-Header-Feld hinzu, um anzuzeigen, dass der Inhalt der Datei in welchem ​​Format vorliegt. Wenn sie beispielsweise statische HTML-Dateien bereitstellen, fügen sie das Content-Type: text/html-Headerfeld hinzu. Auf diese Weise können Browser verstehen, welche Anwendung für die Verarbeitung des Antwortkörpers verwendet wird.

Wenn Webserver die Anforderungserweiterung nicht kennen, suchen sie nach einer bereits installierten Anwendung, die die Erweiterung kennt. Wenn eine andere Anwendung vorhanden ist, wird die Datei von dieser Anwendung bereitgestellt.

Sie können sich dieses Beispiel vorstellen, um zu verstehen, was passiert:

Sie gehen in ein Restaurant (Sie sind der HTTP request). Sie fragen nach einer Pizza (Pizza ist die Erweiterung). Der Chefkoch versteht es, Pizza zu servieren, also dient er Ihnen.

Bedenken Sie jetzt, dass Sie ein anderes Mal in dasselbe Restaurant gehen und nach Bomyhoor (ein falsches Essen) fragen. Der Chef kann nicht kochen und servieren. Er/sie fragt andere Köche, ob es bereits jemanden in der Küche gibt (Küche ist der Webserver), der weiß, wie er kochen soll? Wenn jemand weiß, wie man Boomyhoor kocht, dient er Ihnen.

Bedenken Sie, dass Sie ein anderes Mal gehen und diesmal nach Graboori fragen. Chef weiß bereits (aus einem Wörterbuch), dass Graboori nur ein anderer Name für Pizza ist. Weil er Pizza zu servieren weiß, dient er einfach dazu.

Wenn Sie einen MIME-Typ zu einem Webserver hinzufügen, ordnen Sie einem Dateityp einfach eine Anforderungserweiterung zu.

76
Saeed Neamati

Die akzeptierte Antwort behebt nur den Fehler 406. Der Fehler 404 könnte auftreten, eine Beschreibung, wie dieser Fehler behoben werden kann, finden Sie hier: https://stackoverflow.com/a/28828628/3936440

0
ViRuSTriNiTy

sie müssen hinzufügen 

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

in Ihre Web.config 

probe : 

<?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
milad raeisi