2013-03-12 12 views
5

Próbuję uruchomić klasyczne strony Asp w trybie linii rur w IIS 7 Zintegrowany. W związku z tym dodałem następujące mapowanie Handler do Web.Config.Mapowanie uchwytów Dla klasycznych stron rozszerzeń Asp .asp dających błędy w trybie zintegrowanej linii rurowej IIS

add name="ASPClassic" 
path="*.asp" 
verb="GET,HEAD,POST" 
modules="IsapiModule" 
scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" 
requireAccess="Script" 
resourceType="Unspecified" 

Ale kiedy asp stron są wymagane, Application Server Dostępna błąd jest podniesiona i szczegółowy dziennik zdarzeń wniosek, że:

Żądanie odwzorowane na aspnet_isapi.dll powstał w aplikacji basen działający w zintegrowanym trybie .NET. Aspnet_isapi.dll może być używany tylko podczas pracy w klasycznym trybie .NET. Należy podać parametr preCondition = "ISAPImode" w mapowaniu programu obsługi, aby był uruchamiany tylko w pulach aplikacji działających w klasycznym trybie .NET lub przenieść aplikację do innej puli aplikacji działającej w klasycznym trybie .NET w celu użycia tego mapowania obsługi.

Gdzie popełniłem błąd?

Odpowiedz

0

Czy to możliwe, aby móc uruchamiać klasyczne strony asp w IIS 7, musisz to jeszcze zainstalować? (To nie jest domyślnie instalowany na IIS 7.)

Zobacz tutaj jak dodać moduł asp zależności pogoda to na Windows7 lub Windows Server 2008: http://www.iis.net/configreference/system.webserver/asp

BTW: co próbujesz to rzeczywiście mapowanie skryptów w klasycznym trybie potokowym.
Zobacz także: Procesor http://www.iis.net/learn/application-frameworks/building-and-running-aspnet-applications/wildcard-script-mapping-and-iis-integrated-pipeline_

10

Skrypt dla Classic ASP nie jest:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

ale:

%windir%\system32\inetsrv\asp.dll

Oto prawidłowa pozycja mapowanie obsługi z applicationHost.config pliku IIS7, gdy jest zainstalowany Klasyczne ASP:

<add name="ASPClassic" 
    path="*.asp" 
    verb="GET,HEAD,POST" 
    modules="IsapiModule" 
    scriptProcessor="%windir%\system32\inetsrv\asp.dll" 
    resourceType="File" /> 

Brzmi jakbyś nie został zainstalowany Classic ASP na serwerze lub stacji roboczej.

W Windows 7 musisz przejść do Panel sterowania -> Programy i funkcje, a następnie kliknąć "Włącz lub wyłącz funkcje systemu Windows". Dostaniesz okno, które wygląda tak, upewnij się, że "ASP" jest zaznaczone:

enter image description here

W Windows 2008R2 iść do Panel sterowania -> Narzędzia administracyjne -> Server Manager. Kliknij "Role" w lewym panelu, a następnie przewiń w dół do "Web Server (IIS)".Nie powinno być listą „Usługi rolę” tak (mam podświetlone ASP, który jest zainstalowany na serwerze Ja wziąłem to zrzut ekranu z):

enter image description here

Jeśli ASP nie jest zainstalowany, a następnie kliknij " Dodaj usługi ról "i zaznacz pole wyboru ASP pod numerem Web Server -> Application Development i kliknij Next, aby zakończyć instalację.

Jeśli wszystko jest dobrze, to powinieneś zobaczyć Handler mapowanie w IIS Manager:

enter image description here

+0

naprawdę wdzięczni za wkład. Sprawdzę to i zaznaczę twoją odpowiedź tak szybko, jak to możliwe. –

+0

Znalazłem to podczas rozwiązywania innego problemu i stwierdziłem, że nie mam zainstalowanego ASP classic, a jednak ** skrypty ASP działają dobrze na moim komputerze **. Jak to jest możliwe? –

+0

@JoshuaFrank - Jakiego systemu operacyjnego używasz? – Kev