# Microsoft Internet Information Services

Internet Information Services (IIS) (vormals Internet Information Server) ist eine Diensteplattform des Unternehmens Microsoft für PCs und Server. Über sie können Dokumente und Dateien im Netzwerk zugänglich gemacht werden. Als Kommunikationsprotokolle kommen hierbei HTTP, HTTPS, FTP, SMTP, POP3, WebDAV und andere zum Einsatz. Über IIS können ASP- oder .Net-Framework-Applikationen (ASP.NET) ausgeführt werden, sowie – mit den passenden installierbaren ISAPI-Filtern – auch PHP und JSP.

## Betriebssysteme

IIS-Dienste können auf folgenden Microsoft-eigenen Betriebssystemen eingesetzt werden: Windows NT Server, Windows 2000 Server, Microsoft Windows Server 2003, Windows Server 2008, Windows Server 2012 und Windows Server 2016, außerdem auch auf den nicht-Server-Systemen (insbesondere Windows 7, Windows 8, Windows 10 und Windows 11).
Bei Windows 2000 Professional und Windows XP Professional werden eingeschränkte IIS-Dienste in den jeweiligen Versionen als optionale Komponente mitgeliefert. Hier ist die Anzahl gleichzeitiger Verbindungen auf höchstens 10 beschränkt und es kann nur eine Website (die „Standardwebsite“) eingerichtet werden. Vorgesehen ist der Einsatz als reine Test- und Entwicklungsumgebung. Diese IIS Express-Version ist auch in allen Varianten von Visual Studio 2012 enthalten.
IIS 7.0 ist nicht nur in Windows Server 2008 enthalten, sondern auch in den Business-, Enterprise- und Ultimate-Versionen von Windows Vista. Eine eingeschränkte Version (maximal 3 Verbindungen) ist in Vista Home Premium enthalten.

### Microsoft Internet Information Services 7

Internet Information Services 7.0 ist die Implementierung von Internet Information Services in Windows Server 2008 und Vista, in Windows Server 2008 R2 und Windows 7 kommt die leicht überarbeitete Version 7.5 zum Einsatz. Er dient als Webserver. Im Server 2008 ist der IIS 7.0 als Rolle implementiert. Bei Vista ist der Server mit unterschiedlichen Einschränkungen in der Business-, Ultimate- und Home Premium-Variante mitgeliefert.

## Architektur

Der IIS 7.0 ist modular in einzelne Komponenten aufgeteilt. Die Architektur und Funktionsweise unterscheidet sich grundlegend von der Vorgängerversion.

### Listenerservices

Als Kernaufgabe eines Webservers lauscht der Listener auf eingehende Verbindungen. Dabei können die gängigen Protokolle standardmäßig bereitgestellt werden. Zusätzlich können WCF-connections verwaltet werden.

### HTTP-Listener Stack

Dieser überwacht HTTP-Anfragen. Diese Funktion ist nativ im Betriebssystem verankert und wird vom IIS adaptiert.
Der Stack verwaltet dabei das Caching, die Verteilung der Anfragen auf die einzelnen Threads und führt diverse Sicherheitsfunktionen des Serversystems aus.

### WWW-service routine

Der www-service unterscheidet sich grundlegend von der Funktionsweise im IIS 6.0. Er verwaltet nur noch die Konfiguration des HTTP-Listener Stacks und ist für das Routing an den WAS verantwortlich.

### WAS Windows Process Activation Service

Der WAS verwaltet die einzelnen Arbeitsthreads und die Applikationspools des IIS. Er übernimmt dabei die Aufgaben des www-service im IIS 6.0. Zusätzlich werden durch den WAS auch die Verbindungen, welche nicht auf dem HTTP-Stack aufsetzen, verwaltet.

## Funktionen

Alle Funktionen können durch die MMC verwaltet werden. Die Oberfläche und Menüstruktur für die Konfigurationsmöglichkeiten wurde dabei komplett neu strukturiert gegenüber früheren Versionen des IIS. Alle Funktionen sind zudem als Features einzeln installierbar und zentral konfigurierbar.

### Kernfunktionen

Als Kernfunktionalität ist die Bereitstellung von Webseiten anzusehen. Der IIS verwaltet dabei die statischen Inhalte und die Auslieferung. Ebenso wird das Fehlermanagement und die Grundkonfiguration durch die Kernmodule bereitgestellt.

### Dynamische Inhalte

Der IIS unterstützt die Verwendung von dynamisch erstellten Webseiten. Dabei wird das komplette Spektrum der gängigen Technologien abgedeckt. Direkt unterstützt der IIS .NET für Anwendungen und ASP.NET für webseitenbasierte Anwendungen. Ebenso werden CGI und alle ISAPI-basierten Plugins unterstützt. Server Side Includes lassen sich ebenso nativ einbinden. Skriptsprachen wie PHP sind implementierbar (zum Beispiel über cgi oder isapi).

### Logs

Der IIS stellt unterschiedliche Protokollfunktionen zur Verfügung. Diese lassen eine Auswertung der Performance, des Systemzustands, der Userlogs und der frei definierbaren Logs zu.

### FTP

Der IIS unterstützt die Erstellung eines FTP-Servers.

### Authentifizierung

Um eine sichere Anmeldung für den Zugriff zu gewährleisten, werden unterschiedliche Authentifizierungsmethoden angeboten:
* SimplePost (Standardauthentifizierung)
* Windows-Authentifizierung
* Digest-Authentifizierung
* Authentifizierung über Zertifikatsdienste
* URL-based
* IP-based
* Domänenorientierte Authentifizierung

## Versionen

* IIS 1.0 gab es als Download für Windows NT 3.51.
* IIS 2.0 ist in Windows NT 4.0 integriert.
* IIS 3.0 wurde mit Service Pack 2 unter Windows NT 4.0 installiert. Es war die erste Version mit den Active Server Pages.
* IIS 4.0 wurde als Download für Windows NT 4.0 zusammen mit dem kostenlosen Option Pack angeboten. Der IIS wurde zum ersten Mal mit der mitgelieferten Microsoft Management Console (MMC) verwaltet. Man konnte nun zudem erstmals mehrere Webseiten- und FTP-Server-Instanzen einrichten (mit verschiedenen Ports und/oder Hostnamen) und zum ersten Mal gab es Applikationspools. Der Option Pack bot viele weitere Technologien wie den Microsoft Transaction Server, den Microsoft Index Server, den Certificate Server und Site Server Express. Mit Ausnahme des letzten sind diese ganzen Produkte direkt in IIS 5.0 unter Windows 2000 eingeflossen.
* IIS 5.0 ist in Windows 2000 integriert. Ab sofort heißt das Produkt „Microsoft Internet Information Services“ (statt „Microsoft Internet Information Server“).
* IIS 5.1 ist in Windows XP Professional und Windows MCE integriert (32-Bit-Versionen).
* IIS 6.0 ist in Windows Server 2003 und in Windows XP x64 Edition integriert. Er wurde von Grund auf neu konzipiert, um Sicherheitsprobleme zu lösen. So muss jetzt jede Web Server Extension wie ASP, ASP .NET, Internet Printing, Server Side Includes (SSI) etc. explizit angeschaltet werden, damit nicht benutzte Features keine potentiellen Sicherheitslücken anbieten. Außerdem kam u. a. IPv6 Support hinzu.
* IIS 7.0 ist in Windows Server 2008 und in Windows Vista integriert.
* IIS 7.5 ist in Windows Server 2008 R2 und in Windows 7 integriert.
* IIS 8.0 ist in Windows Server 2012 und in Windows 8 integriert.
* IIS 8.5 ist in Windows Server 2012 R2 und in Windows 8.1 integriert.
* IIS 10 ist in Windows Server 2016, Windows Server 2019, Windows Server 2022 (ab hier mit TLS1.3) und "Windows Server 2025 PreView" sowie in Windows 10 integriert und enthält Unterstützung für HTTP/2.