2011-09-07 5 views
5

W projekcie .NET 4 MVC3 uruchamiam lokalny komputer na serwerze IIS6 (nie pytaj dlaczego). Ma odpowiednie mapowanie wieloznaczne w IIS do v4 aspnet_isapi.dll, a to samo dotyczy rozszerzenia .less.. Pliki bez plików są statycznie wyświetlane na serwerze IIS6 + .NET 4 MVC3

Program Web.config ma zdefiniowane następujące adresy URL: IIS6 i IIS7.

<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> 

Surfowanie do /path/to/nonexisting.less rzuca odpowiedni błąd, który pokazuje mi StackTrace że LessCssHttpHandler jest w akcji.

Surfowanie do /path/to/existingfileondisk.less po prostu pobiera oryginalny plik less w niezmienionej formie. Wydaje mi się, że działa tutaj static static fileler, choć nie jestem pewien.

Czego mi brakuje (oprócz nowej maszyny;))?

Odpowiedz

1

Proponuję umieścić wszystkie pliki .less w folderze. Załóżmy, że utworzyłeś folder o nazwie Mniej w katalogu głównym. Masz sumują tę linię do global.asax, aby to działało:

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.IgnoreRoute("Less/{*path}"); 
    ... 
} 
2

ja również napotkał ten problem, a obok stała rozwiązanie problemu:

Jeśli używasz IIS 6 lub wcześniej lub nie używają zintegrowanego potoku usług IIS, musisz skonfigurować ustawienia serwera WWW, aby żądania dla plików .LESS były kierowane do silnika ASP.NET (aby mogły być przetwarzane przez .LESS HTTP Handler). Aby uzyskać więcej informacji przeczytaj How ASP.NET Web Pages are Processed on the Web Server

Kroki Jak skonfigurować IIS6:

  1. kliknij prawym przyciskiem myszy na Stronie internetowej - Rozszerzenia> Application - -> Właściwości -> Katalog macierzysty -> Konfiguracja> Dodaj ->:
    • wykonywalny = ścieżka DLL asp.net (Fe c: \ okna \ microsoft.net \ ram \ v4.0.30319 \ aspnet_isapi.dll)
    • Rozbudowa = .less
    • Odznacz „Sprawdź, czy plik istnieje”
  2. Konfiguruj typ MIME: Kliknij prawym przyciskiem myszy na Stronie internetowej -> Właściwości -> Nagłówki HTTP -> typy MIME -> Nowy -> Rozszerzenie = .less, typ MIME = "text/css"
Powiązane problemy