Ich habe eine neue VPS-Installation von meinem Provider (Windows 2008 R2, IIS 7.5).
Die Standardwebsite funktioniert einwandfrei: http://5.9.251.167/
Ich habe eine neue Website erstellt und sie für http://new.ianquigley.com gebunden.
Auf diesem Server und überall sonst wird diese Domain der IP-Adresse zugeordnet. (ping new.ianquigley.com zum Beispiel).
Ich habe den Unterordner c:\inetpub\wwwroot\com.ianquigley
erstellt und eine HTML-Datei index.html
mit dem Inhalt " <html>cake</html>
" erstellt.
Das Standarddokument für die Website lautet index.html
Auf dem Server gehe ich in Chrome zu http://new.ianquigley.com/index.html und erhalte einen 404-Fehler.
Die Seite sagt;
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had it's name changed,
or is temporarily unavailable.
Detail:
Module: IIS Web Core
Notification: HttpRequestHandler
Handler: StaticFile
Error Code: 0x80007002
Request URL: http://new.ianquigley.com/index.html
Physical path: c:\inetpub\wwwroot\com.ianquigley\index.html
Logon Method: Anonymous
Logon User: Anonymous
Failed Request Log: c:\inetpub\logs\FailedRequestLog
Der physikalische Pfad existiert. Der Ordner wwwroot
und com.ianquigley
beide haben die Berechtigung "Jeder" und "Lesen".
Die c:\inetpub\wwwroot\logfiles\w3svc2\u_ex130201
Datei enthält die Anforderung für die index.html mit dem 404-Fehlercode.
Update (vom Kommentar unten)
Ich habe c:\cake
mit den Berechtigungen "Jeder" "Vollzugriff" erstellt. Verschob meine index.html-Datei dort hinein und änderte die Zuordnung in IIS. Beim erneuten Überprüfen der Seite im Browser auf dem Server erhalte ich die gleichen Informationen wie oben, mit Ausnahme von "Physischer Pfad"c:\cake\index.html
Update 2 Die Standardwebsite (die einwandfrei funktioniert / von der Festplatte lesen kann) wird im "DefaultAppPool" ausgeführt, der ursprünglich das Konto "ApplicationPoolIdentity" verwendet hat. Die neue Website verwendet denselben App-Pool. Ich habe versucht, das Konto zu ändern. NetworkService, LocalService und LocalSytem (Aktualisieren des App-Pools jedes Mal) .. immer noch keine Freude!
W3SVC2-Protokoll
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2013-02-02 20:00:02
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2013-02-02 20:00:02 5.9.251.167 GET /index.html - 80 - 5.9.251.167 Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.17+(KHTML,+like+Gecko)+Chrome/24.0.1312.57+Safari/537.17 404 0 2 1151
Das sc-win32-status: 2
bedeutet "Datei nicht gefunden". Das ist also wahrscheinlich nur ein Problem mit der Dateizugriffsberechtigung. Wenn dies der c:\inetpub\wwwroot
Fall ist, warum kann die Standardwebsite erfolgreich aus einem Ordner, jedoch nicht aus einem Unterordner mit Berechtigung lesen ?
Im Moment bin ich völlig ratlos.
quelle
c:\inetpub\wwwroot\com.ianquigley
. Haben Sie versucht, die Site in einen physischen Ordner außerhalb von inetpub zu verschieben und stattdessen die IIS-Website diesem Ordner zuzuordnen?AppPoolIdentity
NetworkService
Antworten:
Gesichtspalme
Neues VPS-Feld bedeutet Standardverhalten. zB "Dateierweiterungen für bekannte Typen ausblenden". Als ich das ausschaltete, stellte ich fest, dass meine Datei tatsächlich benannt war
index.html.txt
. Umbenannt inindex.html
und Problem gelöst.quelle
Stellen Sie sicher, dass "Common HTTP Features" unter Web Server installiert sind. Sie können Server-Manager -> Rollen -> Webserver -> Rollendienste verwenden, um zu überprüfen und zu installieren, ob dies nicht der Fall ist.
quelle