## Verwendung des mitgelieferten PHP vor macOS Monterey

PHP ist seit macOS X (10.0.0) und vor macOS Monterey (12.0.0) in macOS enthalten. Um PHP mit dem Standard-Webserver zu verwenden, müssen nur ein paar Zeilen in der Apache-Konfigurationsdatei httpd.conf auskommentiert werden. CGI und/oder CLI sind standardmäßig aktiviert (einfach zugänglich über das Terminal-Programm).

Die folgende Anleitung, um PHP zu aktivieren, ermöglicht ein einfaches und schnelles Aufsetzen einer lokalen Entwicklungsumgebung. Es wird dringend empfohlen, PHP immer auf dem neusten Stand zu halten. Wie für die meisten Anwendungen werden auch für PHP regelmäßig neue Versionen erstellt, um Fehler zu beseitigen und um den Funktionsumfang zu erweitern. Für weitere Informationen sollten Sie die entsprechende macOS-Installations-Dokumentation lesen. Die folgende Anleitung richtet sich an Anfänger, um eine Standardkonfiguration aufzusetzen. Allen Benutzern wird empfohlen, neuere Paket-Versionen zu installieren oder selbst zu kompilieren.

Die normale Installation beinhaltet die Aktivierung des mitgelieferten mod_php für den Apache-Webserver (der Standard-Webserver, der über die Systemeinstellungen von macOS zugänglich ist) und umfasst folgende Schritte:

1. Öffnen Sie die Apache-Konfigurationsdatei. Normalerweise finden Sie diese unter: /private/etc/apache2/httpd.conf Über den `Finder` oder `Spotlight` wird die Datei nur schwer zu finden sein, da sie geschützt ist und den Rechten des `root`-Benutzers unterliegt.

   > Hinweis: Ein Weg, um die Datei zu öffnen, ist, im Terminal einen Unix-basierten Texteditor, z. B. `nano`, zu verwenden. Da die Datei dem Benutzer root gehört, sollten Sie den Befehl `sudo` zum Öffnen (mit Root-Rechten) verwenden, z. B. können Sie Folgendes im `Terminal`-Programm eingeben (danach werden Sie nach dem Passwort gefragt): `sudo nano /private/etc/apache2/httpd.conf` Nennenswerte Befehle für nano: `^w` (suchen), `^o` (speichern), und `^x` (schließen) wobei `^` für die Strg-Taste steht.

   > Hinweis: Versionen von Mac OS X vor 10.5 enthielten ältere Versionen von PHP und Apache. Daher kann sich die Apache-Konfigurationen auf solchen älteren Maschinen im folgenden Verzeichnis befinden: /etc/httpd/httpd.conf.

2. Mit einem Texteditor müssen Sie nur die Zeilen einkommentieren (durch Entfernen von #), die ähnlich wie die folgenden aussehen (die beiden Zeilen sind oft ein Stück voneinander getrennt):

       # LoadModule php5_module libexec/httpd/libphp5.so

       # AddModule mod_php5.c

   Beachten Sie die Dateipfade. Wenn Sie zukünftig PHP selbst kompilieren, sollten die beiden Dateien ersetzt oder wieder auskommentiert werden.

3. Stellen Sie sicher, dass die gewünschten Dateiendungen durch PHP geparst werden (z. B. .php, .html und .inc).

   Durch die folgenden bereits in der Datei httpd.conf enthaltenen Angaben (ab Mac Panther) werden Dateien mit der Endung .php nach dem Aktivieren von PHP automatisch geparst.

       <IfModule mod_php5.c>
           # Wenn PHP aktiviert wurde, werden .php- und .phps-Dateien berücksichtigt.
           AddType application/x-httpd-php .php
           AddType application/x-httpd-php-source .phps

           # Da die meisten Benutzer index.php verwenden möchten, aktivieren
           # wir ebenso automatisch die index.php
           <IfModule mod_dir.c>
               DirectoryIndex index.html index.php
           </IfModule>
       </IfModule>

   > Hinweis:

   > Vor Mac OS X 10.5 (Leopard) war PHP 4 statt PHP 5 enthalten, weswegen die oben genannten Anweisungen angepasst werden müssen (Ersetzen der "5" durch die "4").

4. Stellen Sie sicher, dass durch DirectoryIndex die gewünschten vorgegebenen Index-Dateien geladen werden. Dies kann auch in httpd.conf definiert werden. Normalerweise werden index.php und index.html verwendet. Wie oben bereits gezeigt, ist index.php standardmäßig aktiviert. Passen Sie es wie gewünscht an.
5. Den Pfad zur php.ini setzen oder den Standard verwenden Der Standardpfad unter macOS ist /usr/local/php/php.ini, was durch einen Aufruf von phpinfo() geprüft werden kann. Wenn keine php.ini angegeben wird, verwendet PHP die Standardwerte. Lesen Sie dazu die entsprechende FAQ: Wo sollte sich meine php.ini befinden?.
6. Finden oder Setzen des `DocumentRoot` Dies ist das Wurzelverzeichnis für alle Web-Dateien. Dateien in diesem Verzeichnis werden durch den Webserver ausgeliefert. PHP-Dateien werden geparst, bevor sie an einen Browser ausgeliefert werden. Der standardmäßig gesetzte Pfad ist /Library/WebServer/Documents und kann in der httpd.conf auf einen beliebigen Pfad gesetzt werden. Alternativ ist der standardmäßige Pfad zum DocumentRoot für die einzelnen Benutzer: /Users/ihr_benutzername/Sites
7. Erstellen einer phpinfo()-Datei

   Die Funktion phpinfo() zeigt Informationen über PHP an. Erstellen Sie eine Datei im DocumentRoot mit dem folgenden Inhalt:

   `<?php phpinfo(); ?>`
8. Starten Sie den Apache neu und laden Sie die eben erzeugte PHP-Datei.

   Um neu zu starten, können Sie entweder `sudo apachectl graceful` im Terminal aufrufen oder die Stop-/Start-Option des "Personal Web Server" in den macOS-Systemeinstellungen verwenden. Standardmäßig sollte folgende URL zum Laden von lokalen Dateien im Webbrowser genügen: http://localhost/info.php Alternativ, um Dateien aus dem DocumentRoot eines lokalen Benutzers zu laden: http://localhost/~ihr_benutzername/info.php

Das CLI (oder CGI in älteren Versionen) heißt entsprechend php und existiert wahrscheinlich als /usr/bin/php. Öffnen Sie das Terminal, lesen Sie das Kapitel PHP auf der Kommandozeile des PHP-Handbuchs und führen Sie `php -v` aus, um die PHP-Version dieses PHP-Binärprogramms zu sehen. Ein Aufruf von phpinfo() enthält diese Information ebenfalls.

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open