[TUT] PHP-Scripte im IIS 5.1

Dieses Thema [TUT] PHP-Scripte im IIS 5.1 im Forum "Windows XP Forum" wurde erstellt von connyas, 16. Juli 2005.

Status des Themas:
Es sind keine weiteren Antworten möglich.

Thema: [TUT] PHP-Scripte im IIS 5.1 Da ich in letzter Zeit doch des öfteren darauf angesprochen wurde, ob denn auch PHP-Scripte mit dem IIS...

  1. Da ich in letzter Zeit doch des öfteren darauf angesprochen wurde, ob denn auch PHP-Scripte mit dem IIS (Internet-Informationsdienste) von Windows funktionieren, habe ich mal dieses kurze Tutorial, wie man den IIS für den Betrieb mit PHP-Scripten konfiguriert, zusammengestellt.

    Verwendete Komponenten:
    - Windows XP-Prof
    - IIS-Version 5.1 (dieser sollte schon installiert sein)
    - PHP 5.0.x

    Verzeichnisstruktur:
    [TABLE]
    [TR]
    [TD]D:Server[/TD]
    [TD]Unser Hauptverzeichnis[/TD]
    [/TR]
    [TR]
    [TD]D:Serverphp_includes[/TD]
    [TD]Verz. für Include-Dateien[/TD]
    [/TR]
    [TR]
    [TD]D:ServerPHP5[/TD]
    [TD]Das PHP-Hauptverzeichnis[/TD]
    [/TR]
    [TR]
    [TD]D:Serverphp5ext[/TD]
    [TD]Verzeichnis für PHP-Erweiterungen[/TD]
    [/TR]
    [TR]
    [TD]D:Serverupload_tmp[/TD]
    [TD]Hier werden Temp. Uploads gespeichert[/TD]
    [/TR]
    [TR]
    [TD]D:Serverphp_session_tmp[/TD]
    [TD]Hier werden die Temp. Sessiondaten gespeichert[/TD]
    [/TR]
    [TR]
    [TD]D:Serverhtdocsiis_php[/TD]
    [TD]Verzeichnis für die Homepage[/TD]
    [/TR]
    [/TABLE]
    (Blau markierte Verzeichnisse bitte anlegen)

    PHP-Installation

    Hinweis: Ist schon eine PHP-Installation z.B. für den Apache vorhanden, kann dieser Schritt überspringen werden, dem PHP-Interpreter ist es Wurscht ob er die Anforderungen vom Apache oder vom IIS bekommt, daher kann ohne weiteres eine PHP-Installation für verschiedene Web-Server zuständig sein.
    Hierzu sollte allerdings die Datei php.ini aus dem PHP-Verzeichnis nach c:windows kopiert werden, da der IIS sie nur dort sucht (AFAIK ;)).

    Am Anfang aller Installationen steht wie immer der Download der neuesten Software.
    Unter => http://www.php.net/downloads.php laden wir uns unter dem Punkt Windows Binaries die aktuellste PHP-Version runter => PHP x.x.x zip package und entpacken das Archiv nach d:ServerPHP5 (siehe Hinweis => Pfadangaben!).

    Hinweis: Es gibt auch eine Installer-Version, die bei der Installation den IIS schon konfiguriert. Wer gerne diese Version nehmen möchte, ich bin kein Freund davon, für den ist dieses Tutorial an dieser Stelle schon beendet ;)

    Hinweis: Alle Pfadangaben beziehen sich auf meinen Computer und müßen angepasst werden !

    Als erstes muß die php.ini.dist in unserem PHP-Verzeichnis D:Serverphp5 in php.ini umbenannt und nach C:Windows kopiert werden (als Sicherungskopie lassen wir das Original im PHP-Verzeichnis).

    Zum Bearbeiten der php.ini genügt es, wenn diese in einem normalen Texteditor geöffnet wird.

    Hinweis: Da ich diese Änderungen schon in dem Tutorial Einrichten einer lokalen Testumgebung - Teil 2: PHP 5.0xl erklärt habe, sei mir gestattet, wenn ich hier die wichtigsten Passagen einfach kopiert habe, und die ganze Konfiguration im Schnelldurchlauf abhandle. (http://www.wintotal-forum.de/index.php/topic,98934.0.html)

    Abschnitt: Paths and Directories

    Eintrag => include_path
    Alt
    Code:
    ;include_path = .;c:\php\includes
    Neu
    Code:
    include_path = .;D:\Server\php_includes
    Eintrag => extension_dir
    Alt
    Code:
    extension_dir = ./
    Neu
    Code:
    extension_dir = D:\Server\php5\ext
    Abschnitt: File Uploads

    Eintrag => upload_temp_dir
    Alt
    Code:
    ;upload_tmp_dir =
    Neu
    Code:
    upload_tmp_dir = D:\Server\upload_tmp
    Abschnitt: Dynamic Extensions

    Für unsere Beispiel-Testumgebung sollten folgende Extensions genügen. Diese bitte aktivieren.
    (Aktivieren = Führendes Semikolon ; entfernen)

    extension=php_bz2.dll
    extension=php_cpdf.dll
    extension=php_gd2.dll
    extension=php_mbstring.dll
    extension=php_ming.dll
    extension=php_mysql.dll

    Abschnitt: Module Settings

    Modul => Sessions
    Alt
    Code:
    ;session.save_path = /tmp/
    Neu
    Code:
    session.save_path = D:\Server\php_session_tmp
    Zum Abschluss der Konfiguration müssen noch einige *.dll aus dem PHP-Verzeichnis in das Windows-Verzeichnis kopiert werden. Da ich diese Spielchen gerne nur einmal mache, und viel an meiner Konfiguration rumschraube, kopiere ich gleich zu Beginn alle. Somit habe ich bei evtl. Änderungen meine Ruhe.

    Dies betrifft (z.Zt):
    fdftk.dll, fribidi.dll, gds32.dll, libeay32.dll, libmhash.dll, libmysql.dll, msql.dll, ntwdblib.dll, ssleay32.dll, yaz.dll.
    Diese *.dll's bitte nach c:\windows kopieren

    Konfiguration IIS

    Hinweis: Es gibt verschiedene Möglichkeiten den IIS für PHP zu Konfigurieren, z.B. als CGI-Modul oder als ISAPI-Erweiterung, ich habe mich hier für die ISAPI-Variante entschieden.
    Zum Konfigurieren des IIS, müssen wir die Computerverwaltung öffnen.
    Auf dem Desktop Rechtsklick auf Arbeitsplatz und Verwalten wählen oder Start => Systemsteuerung => Verwaltung.
    Ist die Console (MMC => Microsoft Management Console) geöffnet, bitte die Knoten wie im folgenden Bild erweitern (1), und anschließend die Eigenschaften der Standardwebseite mit Rechtsklick auswählen (2).

    [​IMG]

    Im sich öffnenden Dialog können nun alle Einstellungen für den IIS vorgenommen werden.

    Registerkarte: Webseite
    (1) Beschreibung: Frei wählbarer Name zur bessern Identifizierung (default = Standardwebseite)
    (2) TCP-Anschluss: Standard = Port 80 (läuft parallel noch z.B der Apache, bitte einen anderen FREIEN Port wählen, z.B. Port 8080)

    Registerkarte: Basisverzeichnis
    (1) Da die Webseite auf dem lokalen Rechner liegt, den ersten Punkt gewählt lassen (Standard)
    (2) Lokaler Pfad: Der Pfad, in dem der IIS die Dateien unserer Webseite sucht. In unserem Beispiel D:\Server\htdocs\iis_php
    (3) Hier habe ich die Einstellung auf Nur Lesen belassen, ggf. dies an die eigenen Anforderungen anpassen.

    Skriptzugriff
    Aktivieren Sie dieses Kontrollkästchen, um den Benutzern Zugriff auf den Quellcode zu gestatten, wenn entweder Lese- oder Schreibberechtigungen erteilt wurden. Quellcode umfasst auch Skripts in ASP-Anwendungen. Weitere Informationen finden Sie unter Festlegen der Webserverberechtigungen.

    Lesen
    Aktivieren Sie dieses Kontrollkästchen, um den Benutzern das Lesen und Downloaden von Dateien oder Verzeichnissen sowie deren Eigenschaften zu gestatten.

    Schreiben
    Aktivieren Sie dieses Kontrollkästchen, um den Benutzern das Übertragen von Dateien und deren Eigenschaften in das aktivierte Verzeichnis auf Ihrem Server sowie das Ändern von Dateien, für die Schreibzugriffe zugelassen sind, zu gestatten. Ein Schreibvorgang kann nur über Browser erfolgen, die das PUT-Feature des Protokollstandards HTTP 1.1 unterstützen.

    Verzeichnis durchsuchen
    Aktivieren Sie dieses Kontrollkästchen, um dem Benutzer das Anzeigen einer Hypertextliste der Dateien und Unterverzeichnisse in diesem virtuellen Verzeichnis zu gestatten. Da virtuelle Verzeichnisse in Verzeichnislisten nicht aufgeführt werden, müssen Benutzer den Aliasnamen eines virtuellen Verzeichnisses kennen.

    (4) Konfiguration: Hier bitte klicken, damit wir dem IIS die PHP-ISAPI Erweiterung bekannt machen können

    Dialog Anwendungskonfiguration
    Hier sind alle Erweiterungen aufgeführt mit denen der IIS umgehen kann. Damit nun der IIS auch mit PHP was anzufangen weiß, klicken wir hier auf Hinzufügen .

    Dialog Anwendungskonfiguration - Hinzufügen
    Hier können wir nun den Pfad für die PHP-ISAPI Erweiterung direkt eintragen, bzw. über die Durchsuchen-Schaltfläche wählen.

    (1) Dateityp: Hier bitte *.dll wählen
    (2) Hier bitte aus unserem PHP-Verzeichnis die Datei php5isapi.dll wählen.

    Mit Klick auf Öffnen kann dieser Dialog verlassen werden.

    zurück im Dialog Anwendungskonfiguration - Hinzufügen
    (1) Ausführbare Datei: Hier sollte nun der von uns gewählte Pfad zur php5isapi.dll stehen
    (2) Erweiterung: Hier muss die Dateinamenserweiterung (Extension) für unsere PHP-Scripte eingetragen werden .php

    Hinweis: Soll der IIS auch für *.php4 oder *.php5 Extensions konfiguriert werden, den Schritt Hinzufügen sinngemäß wiederholen. Hierbei kann immer die gleiche php5isapi.dll verwendet werden, einzig die Dateinamenserweiterung muß auf *.php4 usw. abgeändert werden.

    Nachdem der Dialog Hinzufügen durch Klick auf OK verlassen wurde, kann im Dialog Anwendungskonfiguration noch kontrolliert werden, ob die von uns hinzugefügte PHP-ISAPI Erweiterung in die Liste Zuordnungen übernommen wurde.
    Ist dies geschehen, kann dieser Dialog mit Klick auf OK auch verlassen werden.

    Zurück im Dialog Eigenschaften, wählen wir nun die Registerkarte Dokumente.

    Registerkarte: Dokumente
    [​IMG]

    Damit der IIS auch eine index.php als Startseite erkennt, müßen wir ihm das auch bekannt machen.
    Dazu klicken wir auf den Button Hinzufügen (1).
    Im sich öffnenden Dialog bitte index.php eintragen. Nach bestätigung mit OK, sollte dieser Eintrag in die Liste der Standarddokumente übernommen worden sein.
    Hier kann noch mittels der Hoch und Runter Schaltflächen die Priorität der Dokumente definiert werden.
    Diese Einstellung können wir nun Übernehmen und den Dialog mit Klick auf OK verlassen.
    Nachdem alle Dialoge geschlossen wurden, muss nun der IIS zur Übernahme der neuen Einstellungen neu gestartet werden.

    [​IMG]

    Dazu können die oberen Buttons für Start, Stop und Anhalten verwendet werden.
    Wird kein Fehler beim Start des IIS gemeldet, ist die Konfiguration hiermit abgeschlossen.

    Testen der Konfiguration
    Hierzu erstellen wir uns in einem beliebigen Text-Editor eine index.php (So können wir gleich testen, ob unsere Datei auch als Standarddokument akzeptiert wird).
    Code:
    <?php
    phpinfo();
    ?>
    
    Diese Datei speichern wir in unserem Web-Verzeichnis D:\Server\htdocs\iis_php\ ab.

    Nach dem Aufruf von http://localhost bzw. wenn wie angemerkt, noch ein z.B. Apache parallel läuft http://localhost:8080 sollte sich uns in etwa folgender Inhalt öffnen.

    [​IMG]

    Wird die Seite korrekt angezeigt, war unsere Installation erfolgreich.

    Gruss Conny
     
Die Seite wird geladen...

[TUT] PHP-Scripte im IIS 5.1 - Ähnliche Themen

Forum Datum
[TUT] Windows7 schneller booten(Mehrkernprozessor) Windows XP Forum 29. Okt. 2009
Re: [TUT] Squid Proxy-Server unter Windows & Linux Windows XP Forum 28. Juli 2006
[TUT] Einrichten einer lokalen Testumgebung - Teil 2 - PHP 5.0.x Webentwicklung, Hosting & Programmierung 12. März 2005
[TUT] Einrichten einer lokalen Testumgebung - Teil 1 - Apache Webserver Webentwicklung, Hosting & Programmierung 11. März 2005
[TUT] Einrichten einer lokalen Testumgebung - Teil 3 - MySQL-Server 4.1.x Webentwicklung, Hosting & Programmierung 16. März 2005
Status des Themas:
Es sind keine weiteren Antworten möglich.