Erste Schritte mit Windows IIS (Internet Information Services)

Websites sind heute die häufigste Art von Internetinhalten. Um sicherzustellen, dass Ihre Website für das breiteste Publikum sichtbar ist, müssen Sie Ihre Website auf einem Webserver hosten. Wie? Erwägen Sie die Verwendung von Windows Internet Information Services (Windows IIS), einer beliebten Wahl für Webhosting.

In diesem Tutorial erfahren Sie die Grundlagen zum Einstieg in die Verwaltung von Webanwendungen mit Windows IIS über die grafische Benutzeroberfläche oder die Befehlszeilenumgebung!

Weiterlesen und die Verwaltung Ihrer Webanwendungen mit Windows IIS optimieren!

Voraussetzungen

Dieses Tutorial wird eine praktische Demonstration sein. Wenn Sie mitmachen möchten, stellen Sie sicher, dass Sie:

  • A Windows machine – This tutorial uses Windows Server 2012 since it’s stable and available at a low cost (or free). But you can also use Windows 10 for this tutorial.
  • Visual C++-Distribution auf Ihrem Windows-Rechner installiert haben. IIS benötigt Visual C++, um PHP-Seiten korrekt darzustellen.

Windows IIS auf einem Windows Server installieren

Der IIS-Webserver bietet umfangreiche Funktionalität und Skalierbarkeit für das Hosting von Websites und Diensten unter Windows-Betriebssystemen. Bevor Sie jedoch IIS verwenden können, müssen Sie dieses Tool zuerst auf Ihrem Windows-Rechner installieren.

Um Windows IIS auf einem Windows Server zu installieren:

1. Drücken Sie Strg+R, um das Ausführen-Fenster zu öffnen. Geben Sie ServerManager ein und drücken Sie Enter.

Dies öffnet das Dashboard des Server-Managers. IT-Administratoren verwenden dieses GUI-Dashboard für verschiedene tägliche Aufgaben im Zusammenhang mit der Serververwaltung.

Launching the Server Manager

2. Auf Server-Manager klicken Sie auf den Link „Rollen und Features hinzufügen“, um einen Assistenten zu öffnen, mit dem Sie Rollendienste und Features zu Ihrem lokalen Server hinzufügen können.

Initiating adding roles and features

3. Lesen Sie als nächstes die Informationen auf der Seite „Bevor Sie beginnen“ und klicken Sie auf Weiter.

Sie können auch die Option „Diese Seite standardmäßig überspringen“ aktivieren, damit Sie diese Seite beim nächsten Hinzufügen von Rollen und Features nicht mehr sehen.

Acknowledging the welcome page

4. Wählen Sie auf der Seite „Installationsart“ die erste Option (Rollenbasierte oder featurebasierte Installation) aus und klicken Sie auf Weiter.

Diese Option wird in den meisten Fällen empfohlen, da Sie dabei spezifische Rollen, Rollendienste und Features auf standardisierte Weise hinzufügen können.

Wenn Sie die zweite Option (Installation von Remotedesktopdiensten) wählen, müssen Sie die erforderlichen Rollen, Dienste und Features für die Installation manuell auswählen.

Selecting installation type

5. Wählen Sie Ihren Server aus dem Serverpool aus und klicken Sie auf Weiter.

Sie können auch mehrere Server für eine verteilte Installation auswählen, aber das liegt außerhalb des Umfangs dieses Tutorials.

Selecting a destination server

6. Aktivieren Sie auf der Seite „Serverrollen“ das Kontrollkästchen für den Webserver (IIS) für eine skalierbare Webanwendungsinfrastruktur und klicken Sie auf Weiter.

Selecting the Web Server (IIS) role to install on the destination server

7. Lassen Sie die Standardauswahlen ausgewählt und klicken Sie auf Weiter. Dadurch installiert Windows alle erforderlichen Unterfunktionen für die IIS-Serverrolle, einschließlich ASP.NET, statischem Inhalt und Standarddokument.

Confirming default selected features

8. Lesen Sie weitere Informationen über die Webserverrolle (IIS) durch und klicken Sie auf Weiter.

Reviewing more information about the Web Server Role (IIS)

9. Auf der Seite „Rollendienste“ lassen Sie die Standardauswahlen ausgewählt, erweitern jedoch den Knoten „Anwendungsentwicklung“, aktivieren das Kontrollkästchen „CGI“ und klicken Sie auf Weiter.

Diese Option installiert Unterstützung für die Common Gateway Interface (CGI), eine standardisierte Methode zur Schnittstellenbereitstellung externer Anwendungen mit Webservern.

Selecting role services

10. Nach Konfiguration der Installationsparameter klicken Sie auf die Schaltfläche „Installieren“, um die ausgewählten Rollen und Funktionen zu installieren.

Installing the selected roles and features

11. Sobald die Installation abgeschlossen ist, wie unten dargestellt, klicken Sie auf „Schließen“, um den Assistenten zu beenden und zu verlassen.

Und da ist es! Sie haben Windows IIS erfolgreich auf Ihrem Server installiert.

Finishing the roles and features installation

12. Öffnen Sie schließlich Ihren bevorzugten Webbrowser und navigieren Sie zu http://localhost/.

Wenn alles gut geht, sehen Sie die Standard-IIS-Seite wie unten dargestellt, die bestätigt, dass Ihr Webserver aktiv ist.

Viewing the default IIS web page

PHP installieren und IIS für die Verarbeitung von PHP-Anfragen konfigurieren

Sie haben Windows IIS erfolgreich auf Ihrem Server installiert, benötigen jedoch immer noch eine Möglichkeit, Seiten auf Ihrem Server bereitzustellen. In diesem Tutorial installieren Sie PHP und konfigurieren IIS für die Verarbeitung von PHP-Anfragen.

Um PHP auf Ihrem Server zu installieren:

1. Gehen Sie zur Download-Seite der PHP-Version. Zum Zeitpunkt dieser Schreibens ist die neueste stabile Version PHP 8.1.

Laden Sie das Non Thread Safe (NTS) ZIP-Paket herunter, da IIS einen Einzelthread zur Bearbeitung jeder Anfrage verwendet. Das Thread Safe (TS) Paket ist für IIS FastCGI, was PHP ermöglicht, in einer mehrfädigen Umgebung zu laufen.

Downloading the PHP (NST) package

2. Entpacken Sie das heruntergeladene PHP-Archiv in das PHP-Verzeichnis (C:\PHP\) auf Ihrem Server.

Nachdem Sie das Archiv entpackt haben, müssen Sie IIS installieren und konfigurieren, damit Sie Webanwendungen verwalten und bereitstellen können.

Unzipping the downloaded PHP archive to the PHP directory

3. Öffnen Sie Ihren Server-Manager, wählen Sie Dashboard → Tools → Internet Information Services (IIS)-Manager. Diese Aktion öffnet die IIS-Manager-Konsole, in der Sie IIS-Einstellungen konfigurieren, Websites erstellen und verwalten sowie Webanwendungen bereitstellen können.

Opening the IIS Manager console.

4. Wählen Sie jetzt Ihren localhost (Verbindungen-Panel) aus und doppelklicken Sie auf Handlerzuordnungen, um die Liste der verfügbaren Handlerzuordnungen aufzurufen.

Accessing handler mappings

5. Auf der Seite Handlerzuordnungen klicken Sie auf Modulzuordnung hinzufügen (rechtes Panel), um das Dialogfeld Modulzuordnung hinzufügen zu öffnen.

Initiating adding a module mapping

6. Konfigurieren Sie die neue Zuordnung wie folgt:

  • Anforderungspfad – Geben Sie *.php ein, um IIS mitzuteilen, dass alle Anfragen, die mit .php enden, an das PHP-Prozessormodul weitergeleitet werden sollen. Das Platzhalterzeichen (*) spart Zeit, da Sie nicht für jede PHP-Datei eine Handlerzuordnung hinzufügen müssen.
  • Modul – Wählen Sie FastCgiModule, um anzugeben, dass das FastCGI-Modul die Anfragen bearbeiten soll.
  • Ausführbar – Geben Sie den vollständigen Pfad zur Datei php-cgi.exe ein. In diesem Beispiel lautet der Pfad C:\PHP\php-cgi.exe.
  • Name – Geben Sie einen eindeutigen Modulzuordnungsnamen an, aber dieses Tutorial verwendet PHP_FastCGI.
  • Klicken Sie auf Anforderungsbeschränkungen, um Anforderungsbeschränkungen zu konfigurieren.
Adding module mapping

7. Aktivieren Sie das Kontrollkästchen und wählen Sie die Option Datei oder Ordner aus. Diese Option stellt sicher, dass die Handlerzuordnung nur für Dateien auf dem Server gilt.

Selecting the invoke handler

8. Navigieren Sie zum Tab „Verben“ und wählen Sie die Option „Alle Verben“. Diese Option teilt dem IIS mit, alle Arten von HTTP-Anfragen wie GET, POST und HEAD an das PHP-Prozessormodul weiterzuleiten.

Selecting all verbs to be handled

9. Wählen Sie nun im Tab „Zugriff“ die Option „Skript“ aus und klicken Sie auf OK. Diese Option teilt dem IIS mit, dass die PHP-Seiten Skripte sind, die ausgeführt werden sollen, anstatt statische Dateien zu sein, die direkt bereitgestellt werden sollen.

Selecting the required access by the handler

10. Gehen Sie zurück zur Option „Modulzuordnung hinzufügen“ und klicken Sie auf OK, um die neue Modulzuordnung hinzuzufügen.

Adding the new module mapping

11. Öffnen Sie schließlich PowerShell als Administrator und führen Sie den Befehl IISRESET aus, um Windows IIS neu zu starten. Diese Aktion ist erforderlich, damit die neue Handlerzuordnung wirksam wird.

IISRESET 
Restarting the Windows IIS server

Ihr erste Website bereitstellen

Jetzt, da PHP installiert und IIS konfiguriert ist, kommt der spannendste Teil – die Bereitstellung Ihrer Website. Aber zuerst benötigen Sie eine Website zum Bereitstellen. In diesem Beispiel erstellen und bereitstellen Sie eine grundlegende PHP-Seite auf Ihrem IIS-Server.

1. Erstellen Sie eine neue Datei index.php in Ihrem bevorzugten Texteditor im Stammverzeichnis der Website. In diesem Beispiel ist das Stammverzeichnis der Website C:\inetpub\wwwroot\.

Die Erweiterung .php teilt dem IIS mit, dass die Datei index.php eine PHP-Seite ist, die vom PHP-Prozessormodul verarbeitet werden soll.

2. Fügen Sie als Nächstes den folgenden Code zu Ihrer neuen Datei index.php hinzu, speichern Sie Ihre Änderungen und schließen Sie die Datei.

Der untenstehende Code teilt dem IIS mit, eine einfache „Hallo Welt“-Nachricht auf einer PHP-Seite in Ihrem Browser anzuzeigen.

<?php
header('Content-Type: text/html; charset=UTF-8');
echo '<html><head><title>Hello World</title></head><body>Hello world!</body></html>';

3. Öffnen Sie abschließend einen neuen Tab in Ihrem Webbrowser und navigieren Sie zu http://localhost/index.php , um Ihre index.php-Seite vom lokalen IIS-Server anzufordern. Dadurch können Sie testen, ob Ihre Website-Bereitstellung funktioniert.

Wenn alles gut geht, sehen Sie die Nachricht „Hallo Welt!“ auf der index.php-Seite, wie unten dargestellt.

Testing the PHP (index.php) page

Verwalten von Windows IIS über die Befehlszeilenumgebung

Sie sind ein großer Fan der Verwendung der Befehlszeilenschnittstelle? Kein Problem! Neben der grafischen Benutzeroberfläche kann der IIS auch über die Eingabeaufforderung verwaltet werden. Mit diesem Tool können Sie nahezu alle Aspekte des IIS verwalten, einschließlich Websites, Anwendungen, virtuelle Verzeichnisse, Anwendungspools usw.

In diesem Tutorial werden einige grundlegende Befehle zur Verwaltung des IIS behandelt. Aber für eine vollständige Liste aller verfügbaren AppCmd.exe-Befehle schauen Sie sich die offizielle Microsoft-Dokumentation an.

1. Öffnen Sie die Eingabeaufforderung als Administrator und führen Sie die folgenden Befehle aus, um alle Websites (Sites) auf Ihrem IIS-Server aufzulisten.

%systemroot%\system32\inetsrv\APPCMD list sites

Sie sehen eine Liste aller Websites, die derzeit auf Ihrem Server ausgeführt werden, sowie einige grundlegende Informationen zu jeder Website, wie die ID, den Status usw.

Zu allgemein? Kein Problem! Sie können auch AppCmd.exe verwenden, um im nächsten Schritt Informationen zu einer bestimmten Website abzufragen und sich auf die interessanten Informationen zu konzentrieren.

Listing all the websites on your IIS server.

2. Führen Sie den folgenden Befehl aus, um alle Informationen über die Standardwebsite zu erhalten.

%systemroot%\system32\inetsrv\APPCMD list site "Default Web Site"
Listing all information about a specific website

3. Führen Sie anschließend die folgenden Befehle aus, um eine bestimmte Website zu stoppen und alle gestoppten Websites aufzulisten (/state:Stopped).

Sie können den gestoppten Zustand durch andere Website-Zustände ersetzen, wie z.B. startend, laufend oder unbekannt.


%systemroot%\system32\inetsrv\APPCMD stop sites "Default Web Site"
%systemroot%\system32\inetsrv\APPCMD list sites /state:Stopped
Finding all websites that are currently stopped

4. Führen Sie nun den folgenden Befehl aus, um die Ergebnisse weiter zu filtern, indem Sie mehrere Kriterien durch ein Leerzeichen trennen.

Der Befehl unten listet alle Websites auf, die sich im gestoppten Zustand befinden (/state:Stopped) und bei denen die automatische Serverstartebene aktiviert ist (/serverAutoStart:true).

%systemroot%\system32\inetsrv\APPCMD list sites /serverAutoStart:true /state:Stopped

5. Führen Sie schließlich den folgenden Befehl aus, um die Website zu starten, die Sie im dritten Schritt angehalten haben („Standard-Website“).

Starting a stopped website

Zusammenfassung

Sie haben gesehen, wie Windows IIS es Ihnen ermöglicht, Ihre Websites zu verwalten. Und in diesem Tutorial haben Sie gelernt, wie Sie IIS auf einem Windows Server installieren und konfigurieren, um eine grundlegende PHP-Website bereitzustellen und zu testen. Windows IIS ist ein vielseitiges Tool, mit dem Sie Ihre Websites über eine GUI und eine Befehlszeilenumgebung verwalten können.

Mit diesem neu gewonnenen Wissen sind Sie bereit, Ihre Websites und Anwendungen auf IIS zu entwickeln! Warum lernen Sie nicht als Nächstes, wie Sie eine WordPress-Website auf IIS erstellen ?

Source:
https://adamtheautomator.com/windows-iis/