Konfiguruję projekt MVC 3 do pracy na lokalnej instalacji IIS i napotkałem następujący błąd 500:
Program obsługi „PageHandlerFactory-Integrated” ma zły moduł „ManagedPipelineHandler” na liście modułów.
Okazuje się, że dzieje się tak, ponieważ ASP.Net nie został całkowicie zainstalowany z IIS, mimo że zaznaczyłem to pole w oknie dialogowym „Dodaj funkcję”. Aby to naprawić, po prostu uruchomiłem następujące polecenie w wierszu polecenia
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Gdybym był na systemie 32-bitowym, wyglądałoby to tak:
%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i
Moje pytanie brzmi: czy jest sposób na zainstalowanie IIS na komputerze z systemem Windows 7, aby móc korzystać z .NET 4.0 (MVC 3) bez wykonywania tego dodatkowego kroku?
Odpowiedzi:
Okazuje się, że dzieje się tak, ponieważ ASP.Net nie został całkowicie zainstalowany z IIS, mimo że zaznaczyłem to pole w oknie dialogowym „Dodaj funkcję”. Aby to naprawić, po prostu uruchomiłem następujące polecenie w wierszu polecenia
Gdybym był na systemie 32-bitowym, wyglądałoby to tak:
Pamiętaj, aby uruchomić wiersz polecenia jako administrator ( CTRL+ SHIFT+ ENTER)
źródło
Akceptowana odpowiedź jest poprawna, jednak czasami pojawia się komunikat „ Aspnet_regiis.exe nie jest rozpoznawany jako polecenie wewnętrzne lub zewnętrzne, program operacyjny lub plik wsadowy. ”
Aby rozwiązać problem, spróbuj wykonać następujące czynności:
Upewnij się, że instalacja .NET 4.0 nie jest uszkodzona (uruchom instalator i „Napraw”). Istnieje również szansa, że w ogóle nie jest zainstalowany na twoim komputerze.
Jeśli masz pewność, że nie masz .NET 4.0 i chcesz go uruchomić jako .NET 2.0, spróbuj tego :
źródło
Aby rozwiązać problem, spróbuj,
repair the .net framework 4
a następnie uruchom polecenieźródło
Błąd: moduł obsługi „PageHandlerFactory-Integrated” ma zły moduł „ManagedPipelineHandler” na liście modułów
Znalazłem artykuły, aby rozwiązać ten problem, po prostu uruchamiając następujące polecenia w wierszu polecenia:
Jeśli system jest 32-bitowy, wyglądałby tak:
Ale kiedy próbowałem wykonać te polecenia za pomocą wiersza polecenia, otrzymałem następujący komunikat o błędzie / ostrzeżeniu:
Aby rozwiązać ten problem w systemie Windows 8.1, sugeruję wykonanie następujących czynności.
Rozwiązanie:
Idź: Włącz lub wyłącz funkcje systemu Windows -> Internetowe usługi informacyjne -> Usługi WWW -> Funkcje tworzenia aplikacji -> Włącz ASP.NET 4.5
To powinno rozwiązać problem.
źródło
Chciałbym również sprawdzić oczywiste pierwsze: że pula aplikacji jest ustawiona na poprawną strukturę i że twoja aplikacja IIS faktycznie wskazuje folder, w którym umieszczasz swoje pliki
źródło
Jeśli chcesz wdrożyć aplikację MVC bez instalowania MVC, możesz wdrożyć biblioteki DLL MVC wraz z aplikacją . Pomaga to w instalacji MVC 3. Można używać funkcji w niektórych przestrzeniach nazw .Net 4.0 bez instalowania .Net przy użyciu podobnego podejścia.
źródło
Dodałem ścieżki ISAPI / CGI dla .Net 4. Które nie rozwiązało problemu. Następnie uruchomiłem naprawę instalacji .Net V4 (Client i Extended). Który poprosił o ponowne uruchomienie. Naprawiłem to dla mnie.
źródło
Aby to naprawić w komputerze systemem Windows 8.1 Professional , wykonaj następujące czynności.
Zainstaluj instalator platformy internetowej. http://www.microsoft.com/web/downloads/platform.aspx
W Instalatorze platformy internetowej zainstaluj program ASP.NET 4.5 (ta funkcja ma jedną zależność).
Jeśli po prostu wypróbujesz wyżej wymienione polecenie cmd z najpopularniejszej odpowiedzi, otrzymasz następujący komunikat o błędzie / ostrzeżeniu:
C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319> aspnet_regiis.exe -i Microsoft (R) ASP.NET RegIIS wersja 4.0.30319.33440 Narzędzie administracyjne do instalowania i odinstalowywania ASP.NET na komputerze lokalnym. Prawa autorskie (C) Microsoft Corporation. Wszelkie prawa zastrzeżone. Rozpocznij instalację programu ASP.NET (4.0.30319.33440). Ta opcja nie jest obsługiwana w tej wersji systemu operacyjnego . Administratorzy powinni zamiast tego zainstalować / odinstalować program ASP.NET 4.5 z IIS8 za pomocą okna dialogowego „Włącz / wyłącz funkcje systemu Windows”, narzędzia do zarządzania Menedżera serwera lub narzędzia wiersza poleceń. Aby uzyskać więcej informacji, zobacz http://go.microsoft.com/fwlin k /? LinkID = 216771. Zakończono instalację ASP.NET (4.0.30319.33440).
źródło
Próbowałem wykonać polecenie aspnet_regiis w wierszu polecenia, ale otrzymałem odpowiedź, że nie mam uprawnień administratora. Następnie, po trochę googlingu i szukaniu rozwiązania, spróbowałem kliknąć prawym przyciskiem myszy cmd i uruchomić go jako administrator. Potwierdzono tak, kiedy pojawiło się okno dialogowe, ponownie uruchomiono aspnet_iis mrówka działała jak urok. W skrócie: 1. sprawdź .NET Framework w app_pool 2. uruchom cmd jako administrator 3. uruchom aspnet_regiis -i
źródło
Miałem ten sam problem, a moim rozwiązaniem było:
Wybierz „Włączanie lub wyłączanie funkcji systemu Windows”> Internetowe usługi informacyjne> Usługi WWW> Funkcje tworzenia aplikacji> Włącz ASP.NET 4.5
źródło
Miałem podobny problem z Windows Server 2012, naprawiłem ten problem , instalując funkcję „ Serwer aplikacji ” w menedżerze serwerów.
źródło
-Używanie funkcji inicjowania aplikacji -wymaganie błędnych stron (.asp) z powodu dziedziczenia konfiguracji
500.21 wystąpi tylko przy pierwszym połączeniu użytkownika. Kolejne połączenia działają.
Rozwiązane przez poprawienie kolekcji url applicationInitialization w witrynie .NET.
źródło
biegać
cmd
przeciągnij i upuść
Aspnet_regiis.exe
w wierszu polecenia z:typ
-i
(na przykładAspnet_regiis.exe -i
)wciśnij Enter
Powodzenia!
źródło
Miałem ten problem i stwierdziłem, że usunięcie następującego folderu pomogło, nawet w przypadku edycji innej niż Express.
C:\Users\<user>\Documents\IISExpress
źródło
Żadne z tych nie działało dla mnie. Porównując różne pule aplikacji z jedną, która działała, a drugą, która nie działała, musiałem przejść do Ustawień zaawansowanych dla puli aplikacji i ustawić
Włącz aplikacje 32-bitowe = prawda
Potem działało dobrze!
źródło
Miałem ten sam problem, w moim przypadku moduł obsługi był w dwóch miejscach:
A kiedy usunąłem program obsługi z [system.webServer], mój problem zniknął.
źródło
w niektórych scenariuszach ten błąd występuje, ponieważ konfiguracja Microsoft .NET Framework 4.0 dla ASP .NET została uszkodzona, co może wystąpić, jeśli Microsoft Visual Studio 2012 został zainstalowany przed Visual Studio 2010 lub Microsoft SQL Server 2008.
Po wypróbowaniu różnych rzeczy doszedłem do wniosku, napraw instalację .Net, uruchamiając następujące polecenie. Aby uzyskać więcej informacji, kliknij link.
https://msdn.microsoft.com/en-us/library/hh168535(v=nav.80).aspx
źródło
Aby rozwiązać problem, spróbuj naprawić platformę .net 4, a następnie uruchom polecenie
wprowadź opis zdjęcia tutaj
źródło
Miałem ten problem na jednym z moich serwerów sieciowych, gdy próbowałem zmienić aplikację z klasycznej na zintegrowaną. Działa dobrze na dwóch moich innych serwerach WWW, nie tylko na tym. Jest Server 2012, więc nie możesz wykonać aspnet_regiis i nie było folderu setupcache, aby spróbować naprawić. Wszystko zostało ustawione poprawnie w ramach funkcji.
Po przejściu przez% windir% \ system32 \ inetsrv \ config \ applicationHost.config znalazłem jeden krytyczny brakujący bit. Pod moim niedziałającym brakowało dwóch następujących wierszy:
Po ich dodaniu wszystko działało świetnie.
źródło