Gegen Jahresende geht die Workload zum Glück etwas nach unten, daher habe ich endlich mal Zeit, mich wieder um FLOW3 zu kümmern. Bevor aber FLOW3 installiert werden kann, muss zunächst mal PHP 5.3alpha installiert werden und genau da liegt momentan das Problem auf Mac OS X. Man kann nun entweder die Source nehmen und alles selbst kompilieren – aber um ehrlich zu sein – ist mir das zu kompliziert. Oder man kann ein fertiges Image verwenden – dieses scheint aber veraltet zu sein. Ich will mit FLOW3 arbeiten und nicht Stunden an der Installation der Basis verbringen müssen. Fertige Binaries gibt es nämlich für Mac OS X noch nicht. Also habe ich mich auf die Suche nach einer Möglichkeit gemacht, FLOW3 und alle benötigten Programme (Apache2, PHP 5.3alpha3) unter Mac OS X 10.5 vernünftig zum Laufen zu bekommen.
Aufgrund eines Postings von Karsten auf http://beat.typo3.org habe ich mich dran gemacht, MacPorts (ein Packetverwaltungssystem für BSD-Systeme, Vergleichbar mit apt für Debian) auszuprobieren und voilá – funktioniert perfekt und ist wirklich (auch für Nicht-Admins) gut durchzuführen. Damit Ihr das genauso einfach nachvollziehen könnt, habe ich die Schritte einmal detailiert aufgeschrieben (Eingaben in der Shell in blauer Farbe):
- Zunächst einmal geht Ihr auf http://macports.org und ladet Euch die MacPorts-Software herunter: Download (diese ist für 10.5 – auf der Seite selbst gibt es andere Versionen für 10.4 und 10.3). Diese installiert ihr nun.
- Nun macht Ihr eine Shell (Terminal) auf und macht Euch dort zum Admin-User mittels:
sudo su (Passwort-Eingabe) - Da bei der gleich folgenden Installation von PHP5 aus irgendeinem Grund PDO SQLite nicht mit installiert wird (welches aber per default den Zugriff auf die Datenbank unter FLOW3 darstellt bis die Konfigurationsmöglichkeiten für MySQL fertig sind), müssen wir dieses vorher im Portfile entsprechend konfigurieren. Dazu öffnen wir die Datei /opt/local/var/macports/sources/rsync.macports.org/release/ports/www/php5-devel und entfernen das out bei without (sodass nur noch with da steht). Dann speichern und schließen.
–without-pdo-sqlite \ => –with-pdo-sqlite \ - Weiter geht es mit der Installation der PHP Version 5.3alpha3 (welche auch gleichzeitig den Apache2 mit installiert):
port install php5-devel - Nun könnt Ihr Euch erst mal einen Kaffee holen – der nun folgende Prozess dauert ca. 30 Minuten (MacBookPro 2.4 GHz). Es werden neben PHP5 und Apache2 auch sämtliche Pakete installiert und konfiguriert, für die Abhängigkeiten bestehen. Irgendwann ist das ganze durchgelaufen und dann geht’s weiter.
- Nun brauchen wir ein Konfigurationsfile für den Apache:
cp /opt/local/apache2/conf/httpd.conf.sample /opt/local/apache2/conf/httpd.conf - Dort müssen wir dort (hhtpd.conf) PHP5 integrieren:
cd /opt/local/apache2/modules
/opt/local/apache2/bin/apxs -a -e -n “php5″ libphp5.so - Als nächstes denken wir uns ein Verzeichnis aus, in welches FLOW3 später installiert wird – das sogenannte DocumentRoot. Ich habe mir dafür /Library/WebServer/FLOW3 ausgedacht.
- Jetzt öffnen wir die Datei /opt/local/apache2/conf/httpd.conf und suchen dort nach der Zeile: DocumentRoot “/opt/local/apache2/htdocs” und ändern diese in DocumentRoot “/Library/WebServer/FLOW3″
- In der selben Datei suchen wir dann nach <Directory “/opt/local/apache2/htdocs”> und ersetzen die Zeile durch: <Directory “/Library/WebServer/FLOW3″>
- Weiterhin in httpd.conf suchen wir nach DirectoryIndex index.html und hängen ein index.php daran: DirectoryIndex index.html index.php
- Nun müssen wir in httpd.conf noch den PHP-Type hinzufügen. Dazu suchen wir den Abschnitt <IfModule mime_module> und tragen in diesen die folgenden zwei Zeilen ein:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps - Jetzt können wir die Datei httpd.conf speichern und schließen.
- Als nächstes legen wir uns eine php.ini Datei an:
cp /opt/local/etc/php.ini-dist /opt/local/etc/php.ini - Nun öffnen wir die Datei php.ini:
vi /opt/local/etc/php.ini - In dieser Datei suchen wir nach dem Eintrag magic_quotes_gpc = On und ändern diesen in magic_quotes_gpc = Off
- Zusätzlich müssen wir den Zugriff auf SQLite sicherstellen in dem wir bei der folgenden Zeile das Semikolon am Anfang entfernen:
;extension=php_pdo_sqlite.dll - Um nun den Webserver schneller starten zu können, macht es Sinn einen Alias im Userprofil anzulegen. Dafür sollten wir mittels exit den Adminuser wieder verlassen.
- Wir öffnen dazu unsere Profil-Datei:
vi ~/.profile - Dort fügen folgende Zeile hinzu:
alias apache2ctl=’sudo /opt/local/apache2/bin/apachectl’ - Mit dem folgenden Befehl wird nun die Profil-Einstellung neu geladen:
source ~/.profile - Mittels des folgenden Befehls kann der Webserver nun gestartet werden:
apache2ctl start - Wir legen nun in das DocumentRoot (also in /Library/WebServer/FLOW3) eine Datei index.php mit dem folgenden Inhalt und rufen diese über einen Browser mit der Adresse http://localhost aus – dann sollten wir die phpinfo()-Ausgabe erhalten, bei der die erste Zeile PHP Version 5.3.0alpha3 lautet:
<?php
phpinfo();
?> - Soweit so gut… weiter geht’s mit FLOW3
- Nun müssen wir FLOW3 auschecken, welches wir über den folgenden Befehl machen:
svn checkout https://svn.typo3.org/FLOW3/Distribution/trunk /Library/WebServer/FLOW3/
- Nach ca. 2 Minuten habt Ihr FLOW3 lauffähig auf der Platte, samt allen Abhängigkeiten (die automatisch aufgelöst werden).
- Nun könnt Ihr im Browser folgendes eingeben um FLOW3 zu starten:
http://localhost/Public/
Voilá – it works

FLOW3-Startseite


