PHP
downloads | documentation | faq | getting help | mailing lists | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Kompilieren für OS X Server> <Installation unter Mac OS X
Last updated: Fri, 14 Nov 2008

view this page in

Das enthaltene PHP verwenden

Seit der Version 10.0.0 ist PHP standardmäßig in MacOS X 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 (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 Version erstellt, um Fehler zu beseitigen und um den Funktionsumfang zu erweitern. Für weitere Informationen sollten Sie die entsprechende MacOS X Installations-Dokumentation lesen. Die folgende Anleitung richtet sich an Anfänger, um eine Standardkonfiguration aufzusetzen. Alle Benutzer sollten angespornt sein neuere Paket-Versionen zu installieren oder selbst zu kompilieren.

Die normale Installation beinhaltet die Aktivierung des mitgelieferten mod_php's für den Apache-Webserver (Standard-Webserver, der über die Systemeinstellungen von MacOS X zugänglich ist) und umfaßt folgende Schritte:

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

    Hinweis: Ein Weg, um die Datei zu öffnen, ist einen Unix-basierten Texteditor im Terminal, z.B. nano, zu verwenden. Da die Datei dem Benutzer root gehört, sollten Sie den sudo-Befehl 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 /etc/httpd/httpd.conf Nennenswerte Befehle für nano: ^w (suchen), ^o (speichern), und ^x (schließen) wobei ^ für die Strg-Taste steht.

  2. Mit einem Texteditor müssen Sie nur die Zeilen, die ähnlich wie die folgenden aussehen, einkommentieren (durch entfernen von #). Die beiden Zeilen sind nicht selten von einander getrennt, daher finden Sie beide in der Datei:

    # LoadModule php4_module libexec/httpd/libphp4.so
    
    # AddModule mod_php4.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 bereits in der Datei httpd.conf (ab MacOS Panther), enthaltenen Angaben, werden Dateien mit der Endung .php nach dem Aktivieren von PHP automatisch geparst.

    <IfModule mod_php4.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>
    

  4. Stellen Sie sicher, dass durch DirectoryIndex die gewünschten richtigen Index-Dateien geladen werden. Das kann ebenfalls in httpd.conf definiert werden. Normalerweise wird index.php und index.html verwendet. Standardmäßig ist index.php aktiviert, wie oben bereits gezeigt. Passen Sie es wie gewünscht an.
  5. Pfad zur php.ini setzen oder den Standard verwenden Der Standardpfad unter MacOS X ist /usr/local/php/php.ini was durch einen Aufruf von phpinfo() belegt werden sollte. Wenn keine php.ini angegeben ist, verwendet PHP die Standardwerte. Lesen Sie dazu die entsprechenden FAQs: finding php.ini.
  6. Setzen des DocumentRoot's Das ist das Wurzelverzeichnis für alle Web-Dateien. Dateien in diesem Verzeichnis werden durch den Webserver ausgeliefert. PHP-Dateien werden zuvor 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_BENUTZER_NAME/Sites
  7. Erstellen Sie eine phpinfo() Datei

    Die phpinfo()-Funktion zeigt Informationen von PHP an. Erstellen Sie eine Datei im Verzeichnis DocumentRoot mit dem folgendne 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 X 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_BENUTZER_NAME/info.php

Entsprechend enden CLI (oder CGI in älteren Versionen) mit php und verwenden /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 des PHP Binärprogramms zu sehen. Ein Aufruf von phpinfo() enthält diese Informationen ebenfalls.



Kompilieren für OS X Server> <Installation unter Mac OS X
Last updated: Fri, 14 Nov 2008
 
add a note add a note User Contributed Notes
Das enthaltene PHP verwenden
Anonymous
15-Nov-2008 12:36
You only have to uncomment:
#LoadModule php5_module        libexec/apache2/libphp5.so

This is gone:
# AddModule mod_php5.c

The statement in 3 was changed to:
<IfModule mime_module>
    #
    # TypesConfig points to the file containing the list of mappings from
    # filename extension to MIME-type.
    #
    TypesConfig /private/etc/apache2/mime.types

    #
    # AddType allows you to add to or override the MIME configuration
    # file specified in TypesConfig for specific file types.
    #
    #AddType application/x-gzip .tgz
    #
    # AddEncoding allows you to have certain browsers uncompress
    # information on the fly. Note: Not all browsers support this.
    #
    #AddEncoding x-compress .Z
    #AddEncoding x-gzip .gz .tgz
    #
    # If the AddEncoding directives above are commented-out, then you
    # probably should define those extensions to indicate media types:
    #
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz

    #
    # AddHandler allows you to map certain file extensions to "handlers":
    # actions unrelated to filetype. These can be either built into the server
    # or added with the Action directive (see below)
    #
    # To use CGI scripts outside of ScriptAliased directories:
    # (You will also need to add "ExecCGI" to the "Options" directive.)
    #
    #AddHandler cgi-script .cgi

    # For type maps (negotiated resources):
    #AddHandler type-map var

    #
    # Filters allow you to process content before it is sent to the client.
    #
    # To parse .shtml files for server-side includes (SSI):
    # (You will also need to add "Includes" to the "Options" directive.)
    #
    #AddType text/html .shtml
    #AddOutputFilter INCLUDES .shtml
</IfModule>

Extra MIME types can either be added to the file /private/etc/apache2/mime.types or by using an AddType directive as commented on above.
pasquale at fas dot harvard dot edu
15-Nov-2008 12:20
In the newest version of Leopard (at least as early as 10.5.5, which I'm running), Apache’s .conf file moved from /private/etc/httpd/httpd.conf to /private/etc/apache2/httpd.conf.
jaffle
24-Oct-2008 12:36
Additionally, it seems that the default installation of php on Mac OS X (10.5 tested) does not point to the default location of the mysql.sock file that is installed in a standard MySQL 5.0 installation.

This prevents php working with locally hosted MySQL databases.

Adding the following line to the /private/etc/apache2/other/php5.conf file did the trick:

php_value mysql.default_socket /tmp/mysql.sock

(make sure you put it in between the </IfModule> statements)
sachin at dharmapurikar dot in
22-Oct-2008 03:28
I am using MacOSX 10.5.4 and only enabling the mod_php5 wasn't enough to get the PHP support. I had to add following block before I could use php on machine -

<IfModule mod_php5.c>
    # If php is turned on, we respect .php and .phps files.
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    # Since most users will want index.php to work we
    # also automatically enable index.php
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.php
    </IfModule>
</IfModule>
Anonymous
15-Dec-2007 01:19
As of Leopard the instructions here are out of date.  To enable the bundled PHP in Leopard you need to edit /etc/apache2/httpd.conf.  There is a line commented out that loads php5_module.  Uncomment it and restart the web server.  That should be all you need to do to get PHP support to work.

Kompilieren für OS X Server> <Installation unter Mac OS X
Last updated: Fri, 14 Nov 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites