'Der Controller für den Pfad' /favicon.ico 'wurde nicht gefunden ...' Fehler

8

Wir erstellen eine ASP.NET MVC 4-App in Visual Studio 2015. Die App verwendet Elmah.MVC für Ausnahmebehandlung. Wir sind drei Entwickler; für zwei von uns funktioniert es gut auf localhost, aber ein Entwickler bekommt diesen Fehler (von Elmah erfasst):

  

Der Controller für den Pfad '/favicon.ico' wurde nicht gefunden oder implementiert IController nicht.

Dieser Beitrag bietet eine Lösung und ich habe die Routen so geändert, dass sie darin enthalten sind, und der betreffende Entwickler hat seinen Code synchronisiert:

%Vor%

Nun wird in Elmah nichts mehr angezeigt, aber der Benutzer sieht weiterhin einen allgemeinen Fehler:

%Vor%

Was könnte passieren? Danke.

Update 1: Habe den Elmah-Kram aus der Web.config rausgerissen und der Entwickler hat gerade die App geladen. Es kommt in eine Endlosschleife, in der versucht wird, den Benutzer zu authentifizieren, ähnlich wie dies .

Wir verwenden OWIN-MixedAuth und das Problem tritt mehr als wahrscheinlich bei den IIS Express-Einstellungen auf. Ich werde den Entwickler morgen testen lassen und bestätigen:

  1. Markieren Sie das Projekt in Visual Studio
  2. Öffnen Sie rechts den Bereich "Eigenschaften" (oder drücken Sie F4)
  3. Setzen Sie 'Windows-Authentifizierung' auf 'Aktiviert'
  4. Setzen Sie 'Anonyme Authentifizierung' auf 'Aktiviert'

Wie der Name schon sagt, ist es gemischte Auth, also müssen beide Arten der Authentifizierung aktiviert sein.

Update 2: Das Problem OWIN-Mixed Auth wurde behoben. Nun, es hat etwas mit diesen drei HTTP-Modulen in der von Elmah verwendeten Web.config zu tun:

%Vor%

Wenn wir sie kommentieren, kann der eine Entwickler auf die Seite gelangen. Was machen diese Module? Warum sollten sie ein Problem verursachen?

    
Alex 17.07.2017, 19:50
quelle

2 Antworten

1

Schließlich wurde das Problem behoben. Wir mussten zwei Änderungen vornehmen:

  • Wir verwenden OWIN-MixedAuth, und ein Teil des Problems lag in den IIS Express-Einstellungen (unter "Development Server"):

    1. Markieren Sie das Projekt in Visual Studio
    2. Öffnen Sie rechts den Bereich "Eigenschaften" (oder drücken Sie F4)
    3. Setzen Sie 'Windows-Authentifizierung' auf 'Aktiviert'
    4. Setzen Sie 'Anonyme Authentifizierung' auf 'Aktiviert'
  • Ein weiterer Teil des Problems: eine beschädigte Datei "applicationhost.config", die von IIS Express verwendet wird:

    1. Stellen Sie sicher, dass Sie versteckte Dateien im Windows Explorer anzeigen.
    2. Gehen Sie über den Windows Explorer zum Stammverzeichnis Ihres Projekts.
    3. Öffnen Sie den versteckten Ordner .vs .
    4. Gehe zu config & gt; applicationhost.config, erstellen Sie eine Sicherungskopie und öffnen Sie sie im Editor (Notepad ++ ist besser).
    5. Vergleichen Sie es mit einer funktionierenden Datei "applicationhost.config" von einem unserer Computer. Wir haben viele alte Seiten gefunden, die in der Konfigurationsdatei aufgelistet waren und nicht mehr benutzt wurden.
    6. Einmal aufgeräumt, startete die App und es hat funktioniert.
Alex 20.07.2017, 14:29
quelle
0

Fügen Sie dies global.asax

hinzu %Vor%     
Shahzad Khan 18.07.2017 07:31
quelle

Tags und Links