Startseite » QR-Code für diese Seite

PHP / MySQL Entwicklung unter OS X

13 April 2012, 40.461x angezeigt, 6 Kommentare
Tags: , , , , , , ,

Gestern habe ich mich mit der Einrichtung von PHP/MySQL unter OS X beschäftigt. Da es um die Entwicklung von FLOW3 ging, braucht ich ein PHP >= 5.3.2. In dem, anscheint nicht mehr weiterentwickelten, XAMPP Package ist die Version 5.3.1 enthalten, weshalb ich nach einer Alternative gesucht habe. Es gibt inzwischen auch Alternativen zu XAMPP als “rundumsorglos” Pakete für OS X, jedoch liefen diese bei mir nicht rund oder waren nicht so schön im Handling. Somit habe ich mich nun für System Komponenten entschieden.

Apache

Warum einen Apache installieren?! OS X wird bereits mit einem Apache ausgeliefert, welcher in das OS X System integriert ist. Dieser lässt sich über die Systemeinstellungen => Freigaben => Webfreigabe einschalten.

OS X Webfreigabe aktivieren

OS X Webfreigabe aktivieren

Eine direkte URL um die passenden Verzeichnisse zu erreichen wird einem direkt nach der Aktivierung angezeigt. Wer sich eher an der Konsole orientieren möchte, dem helfen folgende Befehle:

sudo apachectl start
sudo apachectl stop
sudo apachectl restart

Um in die genauere Konfiguration des Apaches einsehen zu können, sollte man einen Blick in die “/etc/apache2/httpd.conf”-Datei werfen! Hier können Anpassungen vorgenommen werden, welche nach dem Neustart des Apache direkt greifen.

PHP

OS X wird bereits auch mit einer PHP Version ausgeliefert. Diese war jedoch zu niedrig und ein wenig alt. Die Lösung habe ich auf php-osx.liip.ch gefunden. Mit einem einfachen Befehl…

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.4

… lässt sich die aktuelle PHP Version 5.4.x installieren. Innerhalb weniger Minuten wurde das passende Paket heruntergeladen und passend abgelegt. Nach einem Neustart des “Indianer” (über die Systemeinstellungen oder per Befehl) war die aktuelle PHP Version im Apache geladen. Top!

MySQL

MySQL wird NICHT direkt mit OS X ausgeliefert und muss nachträglich installiert werden. Ich habe mir dazu den Community Server direkt von dev.mysql.com geladen. Die Installation ist reibungslos und es gibt sogar eine Einstellungsdatei, sodass man den Server über die Systemeinstellungen starten und beenden kann. Achtung: Diverse “rundumsorglos” Pakete haben mir eine my.cnf Datei in “/etc” abgelegt, sodass der Server nicht starten wollte (total falsche Konfigurationsdatei). Nach dem Löschen der Datei ging alles bestens. Programme wie MySQL Workbench und MySQL Administrator runden die Datenbank Installation ab.

MySQL Systemeinstellungen Konfiguration

MySQL Systemeinstellungen Konfiguration

Virtual Hosts und weitere Tools

Im Anschluss hatte ich einen lokalen Webserver mit einer aktuelle PHP 5.4.x Version und einem MySQL5 Server. Um das ganze jedoch noch für die Entwicklung perfekt zu machen, fehlen noch ein paar Tools. Als erstes wäre da “git” zu nennen. Dieses habe ich mir einfach über den Paket Manager Homebrew installieren können. Falls “brew” nicht richtig läuft, fehlt vielleicht der “gcc”-Compiler, welchen ihr hier bekommt. Mit dem Befehl “brew install git” ist dann direkt “git” installiert und bereit für den Einsatz (SVN ist schon in OS X verfügbar). Weitere Tools lassen sich mit “brew” ebenfalls gut nachinstallieren.

Zu guter letzte wollte ich dann noch die VirtualHosts anpassen. Anstatt die Projekte in Ordnern liegen zu haben (z.B. http://localhost/PROJEKTNAME/), kann man dann z.B. “PROJEKTNAME.dev” in der URL aufrufen, um das passende Projekt zu finden. Dazu sind einige Anpassungen nötig. Als erstes muss mittels “sudo vi /etc/hosts” die hosts-Datei angepasst werden. Dort muss ein Eintrag “127.0.0.1 PROJEKTNAME.dev” vorliegen (das “.dev” ist optional, fand ich aber für passend). Im Anschluss muss dem Apache noch gesagt werden, wo der neue Host zu finden ist. Der selbe Host wird in folgende Apache Konfigurations-Datei eingetragen: “/etc/apache2/extra/httpd-vhosts.conf”. Damit die Datei auch geladen wird, muss diese in der “/etc/apache2/httpd.conf”-Datei aktiviert werden. Wenn es die “extra”-Datei nicht gibt, kann man den Host auch direkt in die httpd.conf aufnehmen. Das klingt alles kompliziert, ist aber ganz einfach :) Die genau Beschreibung des Vorgehen könnt ihr nochmal hier nachlesen. Ein Beispiel für einen VirtualHost ist dieser Eintrag:

<VirtualHost *:80>
        ServerName flow3.dev
        DocumentRoot "/Users/.../Sites/flow3.dev/Base/Web"
        ErrorLog "/Users/..../Sites/flow3.dev/error.log"
        Options +FollowSymLinks
</VirtualHost>

Ich hoffe ihr konntet damit ein passendes System für euch aufsetzen. Ich bin sehr zufrieden damit und bin auf Feedback gespannt. Wie habt ihr es gemacht?

Tim Lochmüller Autor
Name: Tim Lochmüller
Webseite: http://360friends.de
Posts: 272 Posts

6 Kommentare »

  • Hendrik van Heek
    Hendrik van Heek sagt:

    “Ich bin sehr zufrieden damit und bin auf Feedback gespannt. Wie habt ihr es gemacht?” ->

    *hust*, ich habe den easy-mode gewählt…VirtualBox installiert und mir ein Image von Ubuntu-Server heruntergeladen und aufgesetzt…somit wurde alles fix und fertig eingerichtet und mit apt-get update bleibe ich immer auf dem aktuellen Stand ;-))
    Abschliessend noch WebMin installieren, wenn man die ganz faule Nudel ist (so wie ich) :-)

    Gruß,
    Hendrik

  • Tim Lochmüller
    Tim Lochmüller (Autor) sagt:

    Ist natürlich auch eine gute Möglichkeit. Gerade wenn man sich mit Ubuntu gut auskennt. Nachteil den ich sehe ist, dass ein ganzes Betriebssystem + VM-Emulator dazwischen hängt und auch Ressourcen braucht. Glaube dafür hätte mein derzeitiges MacBook nicht genug Power ;)

  • TYPO3 Kompakt News | TYPO3 Blogger
    TYPO3 Kompakt News | TYPO3 Blogger sagt:

    […] OS X fit für PHP & MySQL machen. Interessant für Web-Dev- oder OS X-Einsteiger. (Klick) […]

  • Steffen
    Steffen sagt:

    Mit brew lassen sich übrigens nicht nur ‘weitere Tools’ installieren sondern auch gleich der komplette MAMP-Stack, also auch direkt PHP und MySQL in aktuellen Versionen (für PHP: https://github.com/josegonzalez/homebrew-php). Als SQL-Verwaltungs/Abfrage-Tool kann ich SequelPro empfehlen. Schick, schnell, solide.

  • Tim Lochmüller
    Tim Lochmüller (Autor) sagt:

    Hey Steffen, habe keine Versions-Infos gefunden. Aber in der Readme stand noch was von 5.3.x, was für FLOW3 z.B. zu alt ist :( Wenn es auch ein aktuelles PHP (5.4.x) ist, dann werde ich mir den Weg auch nochmal anschauen… Beste Grüße, Tim

  • HD24 Webdesign Agentur
    HD24 Webdesign Agentur sagt:

    Danke für die Ausführungen, danach habe ich ein stück lange gesucht!

    Dankr für die mühe,

    liebe Grüße,

    Claudio

Hinterlasse einen Kommentar/Leserbrief!

Füge deinen Kommentar hinzu oder sende einen Trackback von deiner Webseite aus.
Du kannst zudem die Kommentare via RSS abonnieren .

Sei freundlich! Halt dich ans Thema! Kein Spam!

Mit dem Absenden bestätigst du, dass es sich um keinen Spam handelt.