Utworzyłem projekt ASP.NET MVC 3 i używam IIS Express jako serwera internetowego podczas tworzenia. Kiedy próbuję debugować, pojawia się poniższy komunikat o błędzie.
Jak można to rozwiązać?
Błąd serwera w aplikacji „/”.
Odmowa dostępu. Opis: wystąpił błąd podczas uzyskiwania dostępu do zasobów wymaganych do obsługi tego żądania. Serwer może nie być skonfigurowany pod kątem dostępu do żądanego adresu URL.
Komunikat o błędzie 401.2 .: Unauthorized: Logowanie nie powiodło się z powodu konfiguracji serwera. Sprawdź, czy masz uprawnienia do przeglądania tego katalogu lub strony na podstawie podanych poświadczeń i metod uwierzytelniania włączonych na serwerze sieci Web. Aby uzyskać dodatkową pomoc, skontaktuj się z administratorem serwera WWW.
Odpowiedzi:
Jeśli używasz programu Visual Studio, możesz również kliknąć projekt lewym przyciskiem myszy w Eksploratorze rozwiązań i zmienić właściwość Uwierzytelnianie systemu Windows na Włączone w oknie Właściwości .
źródło
Przyczyną tego problemu było to, że usługi IIS Express nie zezwalały na uwierzytelnianie systemu Windows. Można to włączyć, ustawiając
w pliku applicationhost.config znajdującym się w C: \ Users [nazwa użytkownika] \ Documents \ IISExpress \ config.
źródło
Skorzystałem z odpowiedzi Jasona, ale chciałem wyjaśnić, jak dostać się do nieruchomości.
źródło
Hosting w IIS Express: 1. Kliknij projekt w Eksploratorze rozwiązań, aby wybrać projekt. 2. Jeśli panel Właściwości nie jest otwarty, otwórz go (F4). 3. W panelu Właściwości projektu: a) Ustaw „Anonimowe uwierzytelnianie” na „Wyłączone”. b) Ustaw „Uwierzytelnianie systemu Windows” na „Włączone”.
źródło
W moim przypadku musiałem otworzyć plik:
Miałem to w pliku:
Właśnie usunąłem tę
User=""
część. Naprawdę nie wiem, jak to się tam dostało ... :)Uwaga: upewnij się, że na końcu
applicationhost.config
:Możesz również zajrzeć tutaj: https://stackoverflow.com/a/10041779/114029
Teraz mogę uzyskać dostęp do strony logowania zgodnie z oczekiwaniami.
źródło
W moim przypadku poprzednie uruchomienie mojej aplikacji z VS zarezerwowało adres URL. Mogłem to zobaczyć, uruchamiając w konsoli:
aby usunąć tę rezerwację, uruchomiłem to w konsoli z podwyższonym poziomem uprawnień:
Znalazłem kroki tutaj rozwiązać mój problem.
Używam VS2013
źródło
Musiałem uruchomić Visual Studio,
Administrative Mode
aby pozbyć się tego błędu.źródło
Miałem też ten sam problem i wreszcie udało mi się go pokonać.
Solution Explorer
→Right click on project
→Properties
→Web tab
→Project Url
Wybrałem inny numer portu i wszystko było w porządku!
źródło
Żadne z powyższych nie zadziałało dla mnie. To działało dla mnie wcześniej. Potem zdałem sobie sprawę, że pracowałem nad utworzeniem hostowanego połączenia na moim laptopie i współdzieliłem połączenie internetowe z moim bezprzewodowym połączeniem sieciowym.
Aby naprawić mój problem:
Wybierz kolejno Panel sterowania> Sieć i Internet> Połączenia sieciowe
Kliknij prawym przyciskiem myszy dowolne dodatkowe połączenie sieci bezprzewodowej, które możesz mieć (moje nazywało się Połączenie sieci bezprzewodowej 2) i kliknij `` Właściwości ''.
Przejdź do zakładki „Udostępnianie” u góry.
Usuń zaznaczenie pola „Zezwalaj innym użytkownikom sieci na łączenie się przez połączenie internetowe tego komputera”.
Kliknij OK> następnie Zastosuj.
Mam nadzieję że to pomoże!
źródło
Otworzyłem mój plik web.config oraz znalazłem i usunąłem tę sekcję:
i moja witryna pojawiła się, ale są problemy z uwierzytelnianiem.
źródło
Właśnie naprawiłem ten problem w IIS EXPRESS, edytując plik .config hosta aplikacji w sekcji lokalizacji określonej poniżej. Ustawiłem uwierzytelnianie systemu Windows w Visual Studio 2012, ale kiedy przeszedłem do XML, wyglądało to tak.
tag uwierzytelniania systemu Windows musiał zostać dodany poniżej, jak pokazano.
źródło
Zmagałem się z tym problemem, próbując stworzyć prostą aplikację dla SharePoint przy użyciu Provider Hosted.
Po przejściu przez plik applicationhost.config w sekcji basicAuthentication ustawiono wartość false. Zmieniłem to na true, aby w moim scenariuszu przekroczyć 401.2. Istnieje wiele innych łączy wskazujących, jak znaleźć plik applicationhost.config dla usług IIS Express.
źródło
Nigdzie nie widziałem tej „pełnej” odpowiedzi; Właśnie zobaczyłem ten o zmianie numerów portów po tym, jak to opublikowałem, więc meh.
Upewnij się, że we właściwościach projektu w programie Visual Studio ten adres URL projektu nie jest przypisany do tego samego adresu URL lub portu, który jest używany w usługach IIS dla jakichkolwiek powiązań witryn.
Szukam „dlaczego”, ale moje założenie jest takie, że zarówno IIS, jak i IIS Express programu Visual Studio używają tego samego katalogu podczas tworzenia katalogów wirtualnych, a program Visual Studio może tworzyć tylko nowe katalogi wirtualne i nie może ich modyfikować wszystko, co usługi IIS utworzyły podczas stosowania powiązań z lokacją.
nie krępuj się, popraw mnie, dlaczego.
źródło
Nasza strona błędu znajdowała się za stroną logowania, ale strona logowania miała błąd w jednej z kontrolek, co tworzy nieskończoną pętlę.
Usunęliśmy wszystkie kontrolki z naruszającej strony i dodawaliśmy je z powrotem jeden po drugim, aż do znalezienia i naprawienia właściwej kontrolki.
źródło
W moim przypadku (aplikacja ASP.NET MVC 4)
Global.asax
brakowało pliku. Pojawiał się w eksploratorze rozwiązań z wykrzyknikiem. Wymieniłem go i błąd zniknął.źródło