Die Standardwebsite ist der Name, eine Convenience-Website, die bei der Installation von IIS erstellt wird. Sie kann gelöscht und durch neue Websites ersetzt werden, hat jedoch den Vorteil, dass sie mit allen Definitionen und Berechtigungen "out-of-the-box" funktioniert. Die richtigen Ordner- und Dateiberechtigungen zu erhalten, ist möglicherweise der größte Kopfschmerz beim Erstellen einer neuen Website.
Hier ist ein Screenshot der Attribute der Standard-Website:
Die wichtigen Attribute oben sind:
Anwendungspool : Jeder dieser Pools ist nichts anderes als eine Instanz von w3wp.exe, einer pro Pool (IIS wird mehr als einer unter hoher Last gestartet). Es wird hier unter dem Benutzerkonto DefaultAppPool ausgeführt, das bereits über die erforderlichen Mindestberechtigungen für die Ordner der Website verfügt.
Physischer Pfad : Dies ist der Ordner, der alle Dateien der Website enthält (außer Dateien in virtuellen Ordnern). Standardeinstellung ist C:\inetpub\wwwroot
.
Bindungen : Wichtig ist http:*.80
das HTTP-Protokoll an Port 80. Die anderen werden zum Beispiel für die Verwaltung von WCF-Diensten verwendet und hängen von Ihrer Windows-Konfiguration ab. Beachten Sie, dass der Port 80 keinem anderen Standort zugewiesen werden kann, solange er diesem Standort zugewiesen ist. Die vollständige Syntax für einen Eintrag lautet protocol/IP_address:port:host_header
, wenn nicht spezifizierte Elemente "alle" bedeuten, so dass diese Standardeinstellung "alle IP-Adressen und Domänennamen und Hosts" bedeutet.
Wie das geht
IIS überwacht alle angegebenen Ports auf Anforderungen, die eine URL des allgemeinen Formats verwenden:
protocol://[username:password@]domain[:port]/path/file[?parameters]
Die Anforderung wird dann an die (eine) Site weitergeleitet, die die angegebene Kombination aus Protokoll, Domäne und Port abwickelt. Nicht angegebene Elemente haben ihre Standardwerte, oder der Browser fragt in einigen Fällen nach fehlenden Elementen wie Benutzername und Kennwort.
Wenn ein Pfad angegeben ist, wird er normalerweise rein textlich an den physischen Pfad angehängt. Beispielsweise wird die URL http://domain/path/file
für die Standardwebsite in übersetzt C:\inetpub\wwwroot\path\file
. Wenn der Pfadname mit dem Namen eines virtuellen Verzeichnisses beginnt, das auf einen anderen Ordner verweist, D:\myWWWroot
wird beispielsweise der vorhergehende Teil des Ordnerpfads ersetzt, so dass die Dateispezifikation wird D:\myWWWroot\remainder-of-path\file
.
Warum die Default-Website existiert
Der Grund für seine Existenz liegt einfach darin, dass es zu viele Details gibt, wenn man in IIS eine Website von Grund auf neu erstellen muss.
Ich habe bereits die Datei- und Ordnerberechtigungen angesprochen, die der Hauptgrund sind, warum man die berüchtigte "HTTP Error 404.0 - Not Found" -Nachricht erhalten kann, wenn man schwören kann, dass die angegebene Datei existiert. Dies geschieht, wenn dem Benutzerkonto für den Anwendungspool Berechtigungen für einige Ordner im generierten physischen Pfad fehlen.
Die Standard-Website übernimmt alle über Port 80 eingehenden HTTP-Anforderungen an alle IP-Adressen, die dem Computer zugewiesen sind, auf dem sie installiert ist, und übersetzt alle HTTP-URLs in einen physischen Pfad zu einer darin enthaltenen Datei C:\inetpub\wwwroot
.
Es ist viel einfacher, mit der Default-Website zu beginnen und die Attribute nach Bedarf zu ändern, anstatt alles von Grund auf neu zu erstellen, insbesondere wenn man wenig Erfahrung mit IIS 7+ hat. Die Tatsache, dass alle erforderlichen Benutzerkonten und die Berechtigungen für C:\inetpub
vordefiniert sind, kann viele verwirrende Kopfzerkratzungen verhindern.
Dies ist auch für die Sicherheit wichtig, da IIS standardmäßig für Hacker ziemlich unverwundbar ist. Sicherheitsanfälligkeiten werden erstellt, wenn die Standardwerte unachtsam geändert werden oder wenn anfällige Add-On-Produkte hinzugefügt werden.