Apache 2.x unter Microsoft Windows

Dieser Abschnitt enthält Hinweise und Tipps zur Installation von Apache 2.x mit PHP unter Microsoft Windows.

Hinweis:

Bitte lesen Sie zuerst die Installationsanweisungen für PHP unter Windows!

Es wird außerdem dringend empfohlen, die » Apache-Dokumentation zu lesen, um ein grundlegendes Verständnis des Apache 2.x Servers zu bekommen. Lesen Sie auch die » Windows-spezifischen Hinweise für Apache 2.x, bevor Sie hier weiterlesen.

Laden Sie die neueste Version von » Apache 2.x und eine passende PHP-Version herunter. Folgen Sie den Installationsanweisungen für PHP unter Windows und kommen Sie zurück, um mit der Integration von PHP und Apache fortzufahren.

Es gibt drei Möglichkeiten, PHP für die Nutzung mit Apache 2.x unter Windows einzurichten. PHP kann als Handler, als CGI oder unter FastCGI ausgeführt werden.

Hinweis: Beachten Sie bitte, dass Sie bei Pfadangaben in der Apachekonfigurationsdatei unter Windows alle Backslashes, wie z. B. c:\directory\file.ext, in Schrägstriche umwandeln sollten: c:/directory/file.ext. Bei Verzeichnisnamen kann weiterhin ein abschließender Schrägstrich nötig sein.

Installation als Apache-Handler

Um das PHP-Modul für Apache 2.x zu laden, müssen die folgenden Zeilen in die Apache-Konfigurationsdatei httpd.conf eingefügt werden:

Beispiel #1 PHP und Apache 2.x als Handler

# vor PHP 8.0.0 war der Name des Moduls php7_module
LoadModule php_module "c:/php/php8apache2_4.dll"
<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>
# Konfigurieren des Pfades zur php.ini
PHPIniDir "C:/php"

Hinweis: Statt C:/php/ muss im obigen Beispiel der tatsächliche Pfad zu PHP angegeben werden. Stellen Sie sicher, dass sich die Datei, auf die in der LoadModule-Direktive verwiesen wird, am angegebenen Ort befindet. Verwenden Sie für PHP 7 php7apache2_4.dll und für PHP 8 php8apache2_4.dll.

PHP als CGI ausführen

Es wird dringend empfohlen, die » Apache CGI-Dokumentation zu konsultieren, um ein umfassenderes Verständnis für die Ausführung von CGI unter Apache zu bekommen.

Um PHP als CGI laufen zu lassen, müssen die php-cgi-Dateien in einem Verzeichnis abgelegt werden, das mit der ScriptAlias-Direktive als CGI-Verzeichnis gekennzeichnet ist.

In den PHP-Dateien muss eine #!-Zeile eingefügt werden, die auf den Speicherort des PHP-Programms verweist:

Beispiel #2 PHP und Apache 2.x als CGI

#!C:/php/php.exe
<?php
  phpinfo();
?>

Warnung

Wenn Sie das CGI-Setup verwenden, ist Ihr Server für einige mögliche Angriffe anfällig. Wie Sie sich vor diesen Angriffen schützen können, entnehmen Sie bitte dem Kapitel über CGI-Sicherheit.

PHP unter FastCGI ausführen

PHP unter FastCGI laufen zu lassen hat eine Reihe von Vorteilen gegenüber der Ausführung als CGI. Die Einrichtung ist ziemlich einfach:

Sie finden mod_fcgid auf » https://www.apachelounge.com. Die Win32-Binärdateien können von dieser Website heruntergeladen werden. Installieren Sie das Modul gemäß den Anweisungen, die Sie mit dem Modul erhalten.

Konfigurieren Sie Ihren Webserver wie im Folgenden gezeigt und passen Sie dabei die Pfade entsprechend der Installation auf Ihrem System an:

Beispiel #3 Apache für die Ausführung von PHP als FastCGI konfigurieren

LoadModule fcgid_module modules/mod_fcgid.so
# Wo befindet sich Ihre php.ini-Datei?
FcgidInitialEnv PHPRC        "c:/php"
<FilesMatch \.php$>
    SetHandler fcgid-script
</FilesMatch>
FcgidWrapper "c:/php/php-cgi.exe" .php
Dateien mit der Erweiterung .php werden nun vom PHP FastCGI-Wrapper ausgeführt.