Vor einigen Tagen ist MAMP3 released worden – nun habe ich meine Version gefühlt noch nie aktualisiert (ich kann mich zumindest nicht daran erinnern).
Nun habe ich mir natürlich schon einiges konfiguriert, und würde auch gerne alles behalten. Da wären zum Beispiel
- xDebug
- Pecl / Pear
- Postfix
- phpUnit
- phpDoc
- vHosts
- …
Damit das alles nicht komplett verloren geht, habe ich mir als erstes mein PHP 5.4.4-Verzeichnis gezippt. Eigentlich war das aber gar nicht nötig, da der Installer von MAMP3 automatisch das alte Verzeichnis umbenennt. Es geht also nichts verloren. Die mySQL-Datenbanken werden aber schon automatisch in die neue Instanz übernommen und anscheinend nicht kopiert, sondern verschoben. Also nicht wundern.
PHP-Quellen laden
Vorher war ich auf Version 5.4.4 unterwegs – nun bietet es sich ja schon an, die Umgebung auf Version 5.4.25 zu aktualisieren. Natürlich brauche ich auch dann erstmal wieder das include Verzeichnis unter
cd /Applications/MAMP/bin/php/php5.4.25/ mkdir include
Dafür lade ich einfach die passenden Quellen zu der PHP-Version herunter und entpacke sie in meinem neuen Verzeichnis. Dann können wir auch schon configure aufrufen.
./configure
xDebug installieren
Dann geht es weiter mit xDebug:
cd /Applications/MAMP/bin/php/php5.4.25/bin ./pecl install xdebug
Build process completed successfully Installing '/Applications/MAMP/bin/php/php5.4.25/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so' install ok: channel://pecl.php.net/xdebug-2.2.4
Läuft. Noch die php.ini anpassen – ganz am Ende (wichtig!!) fügen wir also folgendes ein:
[xdebug] zend_extension="/Applications/MAMP/bin/php/php5.4.25/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so" xdebug.remote_enable=On xdebug.remote_connect_back=On xdebug.remote_autostart=On ;xdebug.remote_log=/tmp/xdebug.log ;xdebug.profiler_enable=1 xdebug.profiler_output_dir=/tmp/xdebug xdebug.max_nesting_level=250
phpUnit
Wenn wir schonmal dabei sind, installieren wir direkt phpUnit:
./pear config-set auto_discover 1 ./pear install pear.phpunit.de/PHPUnit
phpDoc
./pear channel-discover pear.phpdoc.org ./pear install phpdoc/phpDocumentor
Weitere php.ini Einstellungen
Sendmail konfiguriere ich auch etwas um, so ändere ich z.B. den Default-Absender:
sendmail_path = "/usr/sbin/sendmail -t -i -F 'Matthias Kleine' -f 'Matthias Kleine <mail@mkleine.de>'"
Ansonsten noch ein wenig Error Reporting:
display_errors = On display_startup_errors = On error_reporting = E_ERROR
Und ein paar extra Resourcen gibt es auch noch gratis dazu:
memory_limit = 512M
Weitere Settings
Die vHosts habe ich glücklicherweise ganz sauber in separaten Dateien konfiguriert. So brauchte ich nur 1-2 Includes in die httpd.conf zu schreiben und war mit dem Thema schon durch.
Weiterhin muss ich den export-Path in meinem .bash_profile anpassen, da dieser noch auf die alte Versionsnummer zeigt:
export PATH=/Applications/MAMP/bin/php/php5.4.25/bin:$PATH
Beim ersten Start von MAMP3 geht es erstmal direkt in die Settings:
- Ports auf Default stellen (sonst nervt es mich einfach nur)
- PHP-Version geändert auf 5.4.25 (es wird scheinbar immer nur die höchste und die niedrigste Version im php-Verzeichnis angezeigt – einfach alle anderen löschen)
Fertig! Unter http://localhost/MAMP/index.php?language=English&page=phpinfo (Der Link geht natürlich nur, wenn ihr MAMP am laufen habt) seht ihr dann auch, ob xDebug läuft.
php -v PHP 5.4.25 (cli) (built: Mar 18 2014 18:08:11) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies with Xdebug v2.2.4, Copyright (c) 2002-2014, by Derick Rethans