2010-10-08 9 views
19

Ich habe Website auf meinem lokalen Rechner erstellt, die auf dem Debug-Modus funktioniert gut, aber wenn ich die Website auf lokale iis setzen (7.5) meine Maschine iHTTP-Fehler 401.1 - nicht autorisiert vom lokalen IIS

erhalten

HTTP-Fehler 401.1 - Nicht autorisiert Sie sind nicht berechtigt, dieses Verzeichnis oder diese Seite mit den von Ihnen angegebenen Anmeldeinformationen anzuzeigen.

Authentifizierungseinstellungen Ich habe Fenster Identitätswechsel und Windows-Authentifizierung aktiviert und alles andere in diesem Abschnitt ist deaktiviert

der Ordner Alle haben volle Berechtigungen

Kann mir jemand sagen, was los ist?

+0

Vielleicht bietet Ihr Windows-Ereignisprotokoll mehr Einblick. Es enthält normalerweise einige zusätzliche Informationen für diese Arten von Fehlern. –

+0

Sie können auch die Protokollierung der Website aktivieren und in den IIS-Webprotokollen nachsehen, nicht sicher, ob sie weitere Informationen bereitstellen oder nicht. – BlackICE

Antwort

27

Als quick and dirty fix, gewähren die IIS_IUSRS Gruppe Lesen/Ausführen oder Ändern Berechtigungen für Ihre Web-Ordner ... ABER TUN DIES AUF EINEM INTERNET FACING SERVER, lesen Sie weiter .. ..

um dies zu beheben richtig sollten Sie die Anwendungspoolidentität für Ihre Website Lese/ oder Ändern Berechtigungen der für Ihre Anwendung Web-Ordner ausführen gewähren. Um dies zu tun:

  1. Öffnen Sie den IIS-Manager, navigieren Sie zu Ihrer Website oder Ihrem Anwendungsordner, auf dem die Site bereitgestellt wird.
  2. Öffnen Sie die erweiterten Einstellungen (es ist auf der rechten Seite Aktionen Fenster).
  3. Notieren Sie sich die Application Pool Name dieses Fenster
  4. Klicken Sie doppelt auf das Authentication Symbol schließen Sie dann die Authentifizierungseinstellungen
  5. deaktivieren Windows-Authentifizierung
  6. Rechtsklick auf Anonyme Authentifizierung zu öffnen und Klicken Sie auf Edit
  7. Wählen Sie die Application pool identity Optionsschaltfläche klicken Sie auf OK
  8. Wählen Sie den Knoten Anwendungspools von IIS-Manager Baum auf der linken Seite und wählen Sie das Anwendungspoolname in Schritt 3
  9. Rechts klicken und wählen Erweiterte Einstellungen
  10. Erweitern Sie die Prozessmodelleinstellungen notiert und wählen ApplicationPoolIdentity aus der "Integriertes Konto" Dropdown-Liste klicken Sie dann auf OK.
  11. Klicken Sie OK erneut die Anwendung Pool erweiterten Einstellungen
  12. öffnen Sie eine Administrator-Befehlszeile (rechts auf dem CMD-Symbol klicken, um zu speichern und zu entlassen und „Als Administrator ausführen“ wählen. Es wird irgendwo auf dem Startmenü, wahrscheinlich unter Zubehör.
  13. Führen Sie den folgenden Befehl ein:

icacls <path_to_site> /grant "IIS APPPOOL\<app_pool_name>"(CI)(OI)(M)

Zum Beispiel:

icacls C:\inetpub\wwwroot\mysite\ /grant "IIS APPPOOL\DEFAULTAPPPOOL":(CI)(OI)(M)

Wenn alle icacls.exe wird gut berichten:

 
processed file: c:\inetpub\wwwroot\mysite 
Successfully processed 1 files; Failed processing 0 files 
+0

gute Arbeit, gut gemacht! –

+0

Vielen Dank, ich bekomme dieses blühende nervige Problem jedes Mal, wenn ich eine neue Installation mache. Ich werde in ungefähr 3 Jahren wieder für diesen Fehler googlen! ;-) –

+7

Nur als Hinweis, musste ich die zusätzlichen Schritte ausführen, die in diesem KB-Artikel http://support.microsoft.com/kb/896861 beschrieben sind. Dieses Problem tritt auf, wenn Sie benutzerdefinierte Header zum Durchsuchen einer Website mit einer lokalen Loopbackadresse verwenden. –

0

i al So hatte das gleiche Problem. Ich entferne einfach die Anwendung. erstellt einen neuen Floor und hostet ihn erneut. Problem gelöst.

+1

Können Sie die Schritte beschreiben, die Sie unternommen haben? Ich verstehe nicht, warum das funktionieren würde - es ist eher etwas mit Berechtigungen für den Ordner zu tun? – ozzy432836

Verwandte Themen