webentwicklung-frage-antwort-db.com.de

Ressource konnte nicht geladen werden: Der Server hat mit dem Status 401 (Unauthorized) /App/AngularJS/angular.min.js geantwortet

Ich habe den folgenden Fehler:

Failed to load resource: the server responded with a status of 401 (Unauthorized) http://localhost/App/AngularJS/angular.min.js

Das Projekt funktioniert gut mit localhost. Wenn ich es jedoch auf IIS (7.5) starte, bekomme ich die oben genannte Ausnahme.

[Bild]enter image description here

Mein Projekt ist .net 4.5-Projekt (Web.API 2.2). In diesem Projekt verwende ich AngularJS für die Benutzeroberfläche.

Ich habe versucht, "aspnet_regiis - i" auszuführen, da dies irgendwo als Lösung akzeptiert wurde. Aber es hat in meinem Fall nicht funktioniert. Ich weiß nicht, ob etwas für die Ausführung von [AngularJS] .js-Dateien auf IIS für das Web.API-Projekt erforderlich ist?

BEARBEITEN:

Ich habe folgende Änderungen an der Datei web.config vorgenommen:

<location path="AngularJS">
<system.web>
  <authorization>
    <allow users="*" />
  </authorization>
</system.web>
</location>  
<system.web>
  <authorization>
    <allow users="*" />
  </authorization>
  <compilation debug="true" targetFramework="4.5" />
 <httpRuntime targetFramework="4.5" />
</system.web>

Ich habe auch den Lese-/Schreib-/Änderungszugriff für Benutzer "IUSR" und "IIS_ISURS" des gesamten Projekts festgelegt.enter image description here

Trotzdem bekomme ich die gleiche Ausnahme bei IIS. Aber das gleiche läuft gut mit VS2013.

Error:enter image description here

12
user1400290

Wenn Server mit einer Nachricht mit verweigertem Zugriff antworten (401 Unberechtigter Zugriff), bedeutet dies, dass das anonyme Benutzerkonto IIS aufgrund von Berechtigungsproblemen nicht auf die Ressourcen zugreifen kann.

Standardmäßig wird das IUSR-Konto für anonyme Benutzer verwendet.

Alles was Sie tun müssen, ist:

IIS ->
Authentifizierung -> Legen Sie die anonyme Authentifizierung auf Anwendungspoolidentität fest.

Problem gelöst :)

17
Qasim Bataineh

Ich habe auch den Lese-/Schreib-/Änderungszugriff für "IUSR" und "IIS_IUSR". Benutzer des gesamten Projekts. properties image

das war genug für mich, um das gleiche Problem zu umgehen. 

PS. Entschuldigen Sie, dass Sie Ihr Bild verwenden, möchten Sie nur den von Ihnen erwähnten Schritt hervorheben, der für mich funktioniert hat.

4
AceMark

Gut,

Es ist seltsam, aber es hat funktioniert. Die Lösung bestand darin, den Standardbenutzer für "Verbinden als" in IIS festzulegen. Siehe das untenstehende Bild.

enter image description here

Ich habe den Administratorbenutzer angegeben und dieser funktionierte in IIS. Ich denke, das ist eine gewisse Anforderung an AngularJS, um an IIS zu arbeiten.

Danke für die Antworten.

1
user1400290

Angenommen, Sie verwenden die Formularauthentifizierung und versuchen, sie vor dem Anmelden abzurufen. Sie können Folgendes in Ihrer web.config-Datei in <configuration> verwenden.

<location path="AngularJS">
 <system.web>
  <authorization>
    <allow users="*" />
  </authorization>
</system.web>
</location>

Dadurch werden Dateien im AngularJS-Ordner ohne Anmeldung verfügbar

1
शेखर

Es funktioniert, wenn Sie IUSR zur Anwendungsordner-Sicherheit hinzufügen.

0
McNiel Viray