Nieprawidłowa ścieżka aplikacji


92

IIS7 Windows 7 64-bitowy

Bez względu na to, co robię, nie mogę dodać aplikacji do witryny internetowej.

Gdy „Testuj ustawienia”, otrzymuję komunikat „Nieprawidłowa ścieżka aplikacji”.

Czy ktoś ma jakieś przypuszczenie, co mogę zrobić źle?

zrzut ekranu


Pokaż nam więcej szczegółów. Dodaj zrzut ekranu !!!

5
Mam ten sam problem: Otwórz IIS, wybierz istniejącą aplikację internetową, przejdź do „Basic Settings”, kliknij przycisk „Test Settings”, zobacz błąd. Nie sądzę, aby zrzut ekranu z komunikatem o błędzie był bardziej pomocny. Chociaż może to nie być najlepsze miejsce do zadawania tego pytania. Wypróbuj serverfault.com
bzarah Kwietnia

proszę spojrzeć na to pytanie i odpowiedź, uważam, że będzie to pomocne w rozwiązaniu Twojego problemu: stackoverflow.com/questions/2665578/…
Tamir

2
Prawdopodobnie dobra odpowiedź - stackoverflow.com/a/8826772/1193727
resnyanskiy

Odpowiedzi:


49

Kiedy pojawił się ten błąd, wydaje się, że jest to spowodowane ustawieniem bezpieczeństwa. Gdy zmieniłem właściwość „Połącz jako” na administratora, nie otrzymałem już wiadomości.

Oczywiście nie jest to dobre rozwiązanie dla środowiska produkcyjnego - prawdopodobnie należy przyznać najmniejsze uprawnienia wymagane dla użytkownika, którego IIS będzie domyślnie używać. Zaktualizuję tę odpowiedź, jeśli dowiem się więcej.


4
Sam komunikat o błędzie może być błędem (zobacz moją odpowiedź) - „Połącz jako” może nie być konieczne
Aaron Hoffman

2
Okazuje się, że wiadomość to tylko błąd. Działa z kontem administratora, ponieważ to konto ma wszystkie uprawnienia do wszystkich katalogów internetowych. Jeśli dodasz użytkownika sieci do Administratora, ten błąd również nie pojawi się, bez korzystania z Connect As
Geddon


10

Ostatecznie wyśledziłem to do poświadczeń uwierzytelniania anonimowego. Nie wiem, co się zmieniło, bo ta aplikacja kiedyś działała, ale tak czy inaczej zrobiłem: Kliknij aplikację -> Uwierzytelnianie. Upewnij się, że uwierzytelnianie anonimowe jest włączone (w moim przypadku było), ale także kliknij Edytuj ... i zmień tożsamość anonimowego użytkownika na „Tożsamość puli aplikacji”, a nie „Określony użytkownik”. Wprowadzenie tej zmiany zadziałało dla mnie.

Pozdrowienia.


1
To nie zadziałało dla mnie - ale wyłączenie anonimowego dostępu i zezwolenie na uwierzytelnianie tylko w systemie Windows załatwiło sprawę. Następnie wyłączenie uwierzytelniania systemu Windows i włączenie Anonimowego również zadziałało. Bardzo dziwne.
Sean Doyle

9

Przejdź do swoich powiązań HTTP w usługach IIS (wybierz swoją witrynę internetową, a następnie kliknij prawym przyciskiem myszy opcję Powiązania ...). Usuń SSL i powiązanie HTTP. Dodaj je ponownie.

To zwykle rozwiązuje ten problem.


1
To natychmiast rozwiązało problem. (Kolejny typowy, absurdalnie bezużyteczny komunikat o błędzie z nieoczywistą poprawką.)
Ryan Russon,

5

Spróbuj: Menedżer internetowych usług informacyjnych (IIS) -> Domyślna witryna sieci Web -> Kliknij Właściwości stron błędów i wybierz Błędy szczegółów


1
Szczegółowy błąd poprowadził mnie w dobrym kierunku. WCF - Błąd 500.21 Handler „svc-Integrated” ma zły moduł „ManagedPipelineHandler” na swojej liście modułów „ Rozwiązany za pomocą aspnet_regiis -iru // From x64 .net framework directory
Sprawa 303

Nie napotkałem błędu WCF, ale polecenie aspnet_regiis rozwiązało problem również dla mnie. Zacząłem od nowej konfiguracji pul aplikacji i aplikacji w IIS.
MichaelHuelsen


3

Otrzymałem również ten błąd, stwierdziłem, że był on spowodowany usunięciem domyślnej puli aplikacji „ DefaultAppPool ”. Ponowne utworzenie go rozwiązało problem. Doprowadzało mnie do szału przez kilka dni.

Ten błąd pojawi się, jeśli aplikacja internetowa jest zamapowana na nieistniejącą pulę aplikacji; lub jeśli ta pula aplikacji zostanie zatrzymana.


1
Może się to również zdarzyć, jeśli przypisana pula aplikacji zostanie zatrzymana.
Richard,

Richard, jeśli to jest odpowiedź, zrób z niej osobną odpowiedź zamiast komentarza do tej.
Rocklan,

3

Miałem też ten błąd.

Moja witryna sieci Web usług IIS ma domyślną witrynę sieci Web z trzema (3) katalogami aplikacji pod nią.

Każdy z moich 3 katalogów aplikacji został poprawnie skonfigurowany do korzystania z .NET Framework v2.0 w pulach aplikacji.

Edytuj pulę aplikacji

Jednak domyślna witryna internetowa nigdy nie została skonfigurowana. Nie sądziłem, że to konieczne, ponieważ zawierały wszystkie moje aplikacje.

Domyślna konfiguracja mojego serwera IIS to .NET Framework v4.0, więc zmieniłem ją na .NET v2.0:

Edytuj domyślną pulę aplikacji

Po wykonaniu tej czynności nie otrzymałem już tego samego komunikatu o błędzie.

Teraz widzę to:

Wynik

Mam nadzieję, że te informacje pomogą innym.


1

Otrzymałem również ten błąd. Problem u mnie polegał na tym, że miałem na maszynie dwie osobne strony i nie wskazałem, który adres trafia do której strony. Aby rozwiązać ten problem, przejdź do Menedżera usług IIS -> Wybierz witrynę sieci Web -> Powiązania -> Dodaj ... -> Wprowadź nazwę hosta, który chcesz rozwiązać dla tej witryny sieci Web. Powtórz te czynności dla innych witryn internetowych na komputerze.

HTH. Stóg



0

Nadal nie znalazłem rozwiązania, ale znajduję obejście.

Możesz ręcznie zmienić konfigurację usług IIS w system32 \ intsrv \ config \ applicationHost.config. Po prostu ręcznie utwórz (skopiuj i wklej) sekcję w <sites>i <location>.


0

To zadziałało dla mnie. (przy okazji nie jest to zalecane.)

Dla mojej aplikacji testowej utworzyłem nową pulę aplikacji i zmieniłem jej tożsamość na „NetworkService” .

wprowadź opis obrazu tutaj

Więcej o tożsamościach puli aplikacji można
znaleźć tutaj http://www.iis.net/learn/manage/configuring-security/application-pool-identities i
http://www.iis.net/learn/get-started/planning-for- zabezpieczenia / zrozumienie-wbudowane-konta-użytkowników-i-grup-w-iis

Musisz upewnić się, że „NetworkService” ma uprawnienia do fizycznej ścieżki aplikacji.


0

nawet otrzymywał powyższy błąd. dowiedziałem się, że usługi IIS nie zostały zarejestrowane na serwerze.

rejestracja iis rozwiązała problem.

Dzięki,


0

W moim przypadku miałem wirtualny reż. Kiedy uzyskałem dostęp do głównej usługi WCF w głównym katalogu, działało dobrze, ale dostęp do usługi WCF w katalogu wirtualnym generował błąd. Miałem następujący kod w web.config zarówno dla głównego, jak i wirtualnego katalogu.

    <security>
        <requestFiltering>
            <denyQueryStringSequences>
                <add sequence=".." />
            </denyQueryStringSequences>
        </requestFiltering>
    </security>

usuwając plik z web.config w wirtualnym katalogu, naprawił to.


0

Błąd udało mi się naprawić, zmieniając poniższy plik:

C: \ Windows \ System32 \ inetsrv \ config \ applicationHost.config

W:

<application path="/" applicationPool="ASP.NET v4.0">
    <virtualDirectory path="/" physicalPath="C:\inetpub\wwwroot\Bonobo.Git.Server" />
</application>
<application path="/Bonobo.Git.Server" applicationPool="ASP.NET v4.0">
    <virtualDirectory path="/" physicalPath="C:\inetpub\wwwroot\Bonobo.Git.Server" />
</application>

Dla:

<application path="/">
    <virtualDirectory path="/" physicalPath="C:\inetpub\wwwroot\" />
</application>
<application path="/Bonobo.Git.Server" applicationPool="ASP.NET v4.0">
    <virtualDirectory path="/" physicalPath="C:\inetpub\wwwroot\Bonobo.Git.Server" />
</application>
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.