Skip to main content

AMP unter OS X

Immer wieder stelle ich fest, dass ich das ein oder andere schon ein mal gemacht oder getan habe, erinnere mich aber just in diesem Moment nicht mehr daran.

Genau in eben diesem Augenblick aber, wäre es mehr als nur nützlich wenn ich eine kleine Anleitung geschrieben hätte, ein HowTo.

Diesen Umstand will ich nun mal versuchen zu ändern, sei es auch nur ab und an mal eine Kleinigkeit, aber sicher hilft es dann doch mal – so hoffe ich zumindest.

Eventuell ist für den ein oder anderen von Euch das jeweilige HowTo dann ja auch von Interesse und in diesem Sinne fange ich mal damit an, einen Apache Webserver mit integriertem PHP5 unter MacOS zum fliegen zu bringen. Oft wird in diesem Zusammenhang ja auch eine MySQL Datenbank mit angebunden und darum diese Anleitung gleich noch dazu …

MacOS Leopard bringt von Haus aus bereits einen Apache 2 Webserver mit, welcher nur noch aktiviert werden will. Das geschieht am einfachsten über das Sharing in den Systemeinstellungen:

Dort wird dann das Web-Sharing aktiviert und siehe da, der Apache ist am Start. Ein einfacher Aufruf der URL localhost im Browser der Wahl zeigt dann bereits die default Startseite des Apachen.

Nun soll aber ja auch noch das PHP Modul aktiviert werden. Hierzu ist die Apache Konfiguration anzupassen. Diese befindet sich unter /private/etc/apache2/httpd.conf und kann am besten in der Kommandozeile mittels vi editiert werden. Hierbei nicht das sudo vergessen, sonst wird das nichts. Folgende Zeile muss entsprechend einkommentiert werden:

LoadModule php5_module libexec/apache2/libphp5.so

Anschliessend ist natürlich ein Neustart des Apachen nötig, welcher wieder wie bereits oben beschrieben über das Web-Sharing erfolgt.

Das war’s dann auch schon, der Apache ist samt PHP Modul aktiv und kann genutzt werden. Falls gewünscht kann ein entsprechender weiterer virtueller Host in den Apache Konfigurationsdateien angelegt werden. Hierzu am besten die /private/etc/apache2/extra/httpd-vhosts.conf entsprechend editieren. Ein Beispieleintrag soll das verdeutlichen:

<VirtualHost *:80>
ServerName lokaler_test.de
ServerAdmin webmaster@lokaler_test.de
DocumentRoot „/Library/WebServer/lokaler_test“
<Directory „/Library/WebServer/lokaler_test“>
Options FollowSymLinks Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

Nun steht noch die Installation und die PHP Anbindung des MySQL Datenbankservers aus. In der /private/etc/php.ini Datei muss nun noch der Socket angepasst werden was ein setzen folgender Variablen erfordert:

mysql.default_socket = /private/tmp/mysql.sock

mysqli.default_socket = /private/tmp/mysql.sock

MySQL selbst wird von Leopard nicht von Haus aus mit geliefert, doch dafür steht auf der Webseite des Datenbankherstellers ein passender Download zur Verfügung. Das relevante Paket befindet sich auf dieser Webseite. Das entsprechende dmg Paket dann einfach mit den Standardeinstellungen installieren:

Eine weitere Installation des Tools für die Systemeinstellungsbar ( MySQL.PrefPane ) ist empehlenswert, da dann ein One-Click-Tool zum starten und stoppen des Servers zur Verfügung steht.

Durch einen Klick auf den Button Start MySQL Server wird dieser dann auch letztlich gestartet und kann genutzt werden. Ich empfehle an dieser Stelle dann noch das root Passwort des Servers nach eigenen Wünschen abzuändern:

/usr/local/mysql/bin/mysqladmin -u root password [MeinTollesNeuesPasswort]

Das war’s dann auch schon. Heureka, das Programmieren kann beginnen. Viel Erfolg dabei

Apache, OSX, PHP


Sven Neidahl

Hallo, ich bin Sven, technikbegeisterter Mensch mit Blog-Ambitionen. Ich liebe Australian-Shepherds, leckeres Essen, laute Musik und Wandern mit anschliessendem Wellness-Programm, hauptsache "Lebe das Leben mit Liebe, Spass und Technik".

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Seite ist durch reCAPTCHA und Google geschütztDatenschutz-Bestimmungen UndNutzungsbedingungen anwenden.

The reCAPTCHA verification period has expired. Please reload the page.