Pobrałem projekt online w ASP.Net. Podczas uruchamiania aplikacji pojawia się błąd
Błędem jest użycie sekcji zarejestrowanej jako allowDefinition = 'MachineToApplication' poza poziomem aplikacji. Ten błąd może być spowodowany brakiem konfiguracji katalogu wirtualnego jako aplikacji w IIS.
Jakie zmiany należy wprowadzić w pliku web.config lub w innym miejscu, aby to działało?
asp.net
visual-studio-2012
Deepali
źródło
źródło
obj
folderu.Odpowiedzi:
Właśnie spotkałem tę „rozkosz”. Wygląda na to, że pojawia się tuż po opublikowaniu aplikacji internetowej w trybie wydania.
Jedynym sposobem, aby konsekwentnie obejść problem, który znalazłem, jest przestrzeganie poniższej listy kontrolnej:
źródło
MvcBuildViews
natrue
.Właśnie natknąłem się na ten post i tak się ze mną działo.
Tylko
Clean
projekt i błąd znikają. (musi to być błąd VS2010)źródło
obj
folderu. Czasami to też wymaga usunięcia.Właśnie miałem ten problem podczas tworzenia drugiej wersji mojej witryny. Nie stało się to, kiedy zbudowałem go po raz pierwszy.
Właśnie usunąłem foldery bin i obj, uruchomiłem Clean Solution i zbudowałem go ponownie, tym razem bez problemu.
źródło
Żaden. Musisz skonfigurować katalog, w którym umieściłeś witrynę jako aplikację internetową w IIS .
źródło
Ten błąd występuje podczas próby otwarcia projektu jako strony internetowej. Najłatwiejszym sposobem ustalenia, czy utworzyłeś stronę internetową czy projekt, jest sprawdzenie folderu rozwiązania (tj. Miejsca, w którym zapisałeś kod) i sprawdzenie, czy masz plik * .sln w katalogu głównym, jeśli tak, to „ stworzyliśmy projekt.
Żeby dodać, napotkałem ten błąd właśnie teraz, gdy próbowałem otworzyć projekt, który utworzyłem jakiś czas temu, wybierając „Plik”, „Otwórz stronę internetową” z menu Visual Studio, podczas gdy powinienem był wybrać „Plik”, „Otwórz projekt” zamiast. Zaraz po tym zdałem sobie sprawę :)
źródło
W Visual Studio 2013 zmagałem się z tym przez jakiś czas i jest to dość łatwe do rozwiązania, wystarczy postępować zgodnie z tym, co mówią wyjątki: „katalog wirtualny nie jest konfigurowany jako aplikacja w IIS”
W moim przypadku
WebService
zasadziłemIIS website
takConvert to Application
Ok
WCF powraca.
źródło
Błąd sugeruje, że używany kod oczekuje, że katalog wirtualny zostanie skonfigurowany w IIS.
Przejrzyj dokumentację i dodaj wymagany katalog wirtualny. Powinien to być katalog, który ma
web.config
w sobie (nie katalog główny).źródło
<authentication mode="Forms"><forms name="..." loginUrl="~/Login/Login/" timeout="2880" /></authentication>
w jegoWeb.config
wViews
, a następnie w folderze bagażnika, co spowodowało ten problem.Jeśli masz projekt MVC z włączoną kompilacją widoków, jednym z rozwiązań jest usunięcie folderu obj przed kompilacją. Dodaj do pliku projektu:
Oto artykuł: Jak usunąć folder bin i / lub obj przed kompilacją lub wdrożeniem
źródło
Ostatnia zmiana pliku web.config może znajdować się w niewłaściwym pliku web.config.
<machineKey...>
Nieruchomość została dodana do views / web.config . Bez względu na to, ile Cleans i Rebuilds błąd pozostał. Rozwiązaniem było przeniesienie właściwości do katalogu głównego /web.config .źródło
jeśli kiedykolwiek wystąpi ten błąd
ROZWIĄZANIE
Miałem ten sam problem z VS 2012. Rozwiązałem to przez
<MvcBuildViews>false</MvcBuildViews>
Jeśli tak, to jednym z rozwiązań jest usunięcie zawartości folderu obj w projekcie wygenerowanym przez kompilator.
źródło
MvcBuildViews
wtrue
ten sposób spowodowało błąd.<MvcBuildViews>true</MvcBuildViews>
W moim przypadku problem pojawił się dopiero po opublikowaniu projektu w podkatalogu. Z powodu braku wiedzy umieściłem swój
web_publish
podkatalog wweb_project
katalogu.Oczywiste jest, że
web_publish
zawiera również te same,Web.config
które zawiera projekt. Nieweb_project
wiadomo jednak, żeweb_publish
należy unikać mojego wyszukiwaniaWeb.config
w zagnieżdżonych podkatalogach. W ten sposóbWeb.config
s zostały zduplikowane i pojawił się błąd.Rozwiązaniem było umieszczenie mojego
web_publish
gdzie indziej.źródło
W moim przypadku był folder „Kopia zapasowa”, który zawierał tam kolejną kopię całej witryny. Oznaczało to kolejne,
web.config
więc kompilacja zakończyła się niepowodzeniem z tym błędem. Usunąłem folder „Kopia zapasowa”, zrobiłem czyste rozwiązanie w kompilacjach Debug i Release, a błąd zniknął.źródło
W moim przypadku,
Rozwiązanie zawiera 6 projektów, 1 główny i 5 podkatalogów. wszystkie podkatalogi posiadające web.config.
Podczas uruchamiania dowolnej strony w podkatalogach pojawiał się ten sam błąd.
Usunąłem tę linię z web.config,
to działało dla mnie.
źródło
Wyczyść projekt Usuń folder / obj (prawdopodobnie używasz publikowania i wdrażania? - jest w nim błąd)
źródło
Mój problem polegał na tym, że przypadkowo opublikowałem moją usługę internetową w wstępnie ukończonej lokalizacji na nowej instalacji VS2010.
Opublikowałem w folderze o nazwie PreCompiledWeb i , że obecność pliku web.config pomieszała go.
Po prostu nukowałem folder i odświeżyłem projekt.
Po dwukrotnym kliknięciu tego błędu - zabrałem mnie do tego błędnego pliku web.config, który mnie wyrzucił.
źródło
Może to być problem z wersją, gdy pobierasz projekt .NET Framework 2.0 i chcesz go otworzyć w VS2008, wtedy będziesz musiał zaktualizować do najnowszej wersji, a VS utworzy kopię zapasową folderu w tym samym katalogu głównym. uzyskaj odpowiedź tutaj .
źródło
Wystąpił ten błąd podczas budowania rozwiązania przy użyciu Web Deployment Project utworzonego w moim rozwiązaniu. Rozwiązuję błąd, usuwając folder, w którym zbudowany jest projekt Web Deployment Project. Ten folder jest określony w atrybucie „Folder projektu” właściwości WDP
źródło
Usuń foldery bin i obj. Następnie odbuduj rozwiązanie.
źródło
Najwyraźniej w moim rozwiązaniu były dwa pliki web.config. Korzystam z MVC4, w Widoku był inny plik konfiguracyjny i wprowadzałem zmiany w niewłaściwym pliku. Naprawione tam pomogło mi.
Ale zawsze możesz zmienić domyślne przekierowanie / trasę w pliku global.asax.
źródło
Prawdopodobnie masz folder projektu sub asp.net w folderze projektu, który nie jest skonfigurowany jako katalog wirtualny. Skonfiguruj projekt do uruchamiania w IIS.
źródło
Dodałem do mojej strony skrypt do publikowania. Na koniec usuń folder obj z folderu witryny.
źródło
Ten problem występuje częściej, jeśli w pliku projektu jest włączona opcja „prawda”.
Jak mówi Jonny:
źródło
Miałem projekt, że nie chciałem być aplikacją internetową, chciałem, żeby to był folder. Odpowiedzią było całkowite usunięcie pliku web.config. Należy tylko do katalogu głównego aplikacji.
źródło
Jeśli napotkasz ten problem podczas publikowania witryny lub aplikacji na jakimś serwerze, prostym rozwiązaniem, którego użyłem, jest konwersja folderu zawierającego pliki do aplikacji internetowej.
źródło
Convert to Application
.Ten sam problem mam w VS 2013 po opublikowaniu mojego projektu w trybie debugowania. Problem został rozwiązany przez usunięcie plików obj /
źródło
Mam projekt strony internetowej.
W moim przypadku przeniosłem plik rozwiązania na inną ścieżkę, co powoduje problem. Przywróciłem go do poprzedniej lokalizacji i problem zniknął.
źródło
Dla każdego, kto wciąż szuka, moim rozwiązaniem było usunięcie folderów bin i obj i ponowne uruchomienie Visual Studio wydaje się to naprawić.
źródło
Za pośrednictwem programu Visual Studio opublikowałem usługę WCF za pośrednictwem FTP na zewnętrznym serwerze. Działa dobrze lokalnie i podczas publikowania na serwerze wewnętrznym, ale nie na zewnętrznym. Rozwiązaniem było opublikowanie bez podania
Site Path
(innymi słowy, opublikuj bezpośrednio w katalogu głównym katalogu wirtualnego).Nie jestem pewien, dlaczego to zadziałało, ponieważ próbowałem już przenieść pliki do katalogu głównego za pośrednictwem zewnętrznego klienta FTP - wśród wielu innych prób, w tym wszystkich wymienionych tutaj. Może to było coś z profilem publikacyjnym, tak jak dla FabianVal . Ale w tym momencie nie mam już ochoty na testowanie, ponieważ spieszy mi się, aby przyspieszyć po wszystkich dniach zmarnowanych na ten problem.
źródło
wskazówka 1: wyczyść, a następnie odbuduj.
wskazówka 2: po prostu zamknij VS i otwórz ponownie.
wskazówka 3: pobrany projekt może znajdować się w innym podfolderze ... otwórz folder zawierający pliki .net.
c: / demo1 / demo / (wszystkie pliki)
Powinieneś otworzyć demo z vs ... nie demo1.
źródło
Wypróbowałem wszystkie powyższe rozwiązania, ale żadne z nich nie działało na mój problem. (Jestem pewien, że istnieje 1000 rozwiązań tego problemu) W moim scenariuszu próbowałem opublikować moją usługę internetową WCF, którą testowałem w celu uruchomienia.
Nie zdałem sobie jednak sprawy, że w produkcji jesteśmy tylko HTTPS, co oznacza, że przekierowujemy wszystko do HTTPS. Jak się okazało, wskazywałem na usługę przez HTTP zamiast HTTPS, co spowodowało błąd. Rozwiązaniem w tym scenariuszu była po prostu zmiana protokołu adresu na HTTPS zamiast HTTP.
Mam nadzieję, że pomoże to pewnej biednej duszy próbującej rozwiązać ten problem.
źródło