2013-01-14 7 views
5

Działa na serwerze localhost, ale nie znajduje żadnego domyślnego dokumentu na serwerze sieci Web i skarży się na wyłączenie przeglądania katalogów. IIS7 w obu, i obie strony/pule aplikacji wydają się być skonfigurowane identycznie.MVC4 web api nie znajduje dokumentu domyślnego po wdrożeniu na serwerze WWW

Użyłem szablonu web api w VS2012, który w rzeczywistości nie ma żadnych widoków. Ma tylko działanie kontrolera Index w kontrolerze HomeController.

Jakieś pomysły na to, dlaczego może to powodować różne zachowania w dwóch środowiskach?

+0

Po prostu z ciekawości, czy wcześniej opublikowałeś aplikację MVC na tym serwerze? – Anonymous

+0

Tak, ma jedną inną stronę MVC (na innym porcie), która działa zgodnie z oczekiwaniami. – natpen

Odpowiedz

8

Więc to dodatek do mojego web.config:

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="true" /> 
<system.webServer> 

rozwiązaniu problemu. Wydaje się być wymagane w web.config dla IIS7 na Windows 2008 Server, ale nie dla IIS7 na Windows 7.

+1

Po prostu marnuje się około 1/2 dziennie na to, dzięki milionowi! – Neil

+0

Dzięki! Mam ten problem podczas wdrażania api sieci web ręcznie lub przy użyciu pakietu WWW. – sp1111

0

Miałem użytkownika, który próbował opublikować aplikację MVC4 na IIS7 otrzymując ten błąd, okazało się, że był ponieważ użytkownik ustawił pulę aplikacji tak, aby używała .Net 2 zamiast .Net 4. Zamiast otrzymania błędu informującego o tym, mimo otrzymania powyższego błędu i dopiero po dodaniu powyższego modułu, prawdziwy problem został odkryty.

Powiązane problemy