Installieren Sie mehrere PHP-Umgebungen unter OS X Snow Leopard

6955
Darren Newton

Ich habe gerade mein MBP auf Snow Leopard (OS X 10.6) aktualisiert, was PHP auf 5.3 brachte

Das ist großartig, außer dass ich mein MBP als Entwicklungsmaschine verwende und viele PHP-Bibliotheken und Frameworks (nämlich CakePHP 1.2) verwende, die derzeit nicht mit PHP 5.3 kompatibel sind. Insbesondere CakePHP hat keine stabile Version für PHP 5.3, es ist also keine Frage des Upgrades des Frameworks (und die Produktionsserver sind sowieso unter PHP 5.2.)

Gibt es eine Möglichkeit, PHP 5.2.9 zusammen mit PHP 5.3 zu installieren und dann mithilfe von httpd.conf oder .htaccess Apache mitzuteilen, welche PHP-Version für ein bestimmtes Verzeichnis verwendet werden soll?

Gibt es alternativ eine Möglichkeit, dies mit MacPorts zu tun?

Vielen Dank!

4

6 Antworten auf die Frage

9
Predominant

Mark Story hat einen großartigen Artikel dazu geschrieben. Er ist ein CakePHP-Kernentwickler und verwendet dieses Setup für die Arbeit und die Entwicklung von Cakephp.

http://mark-story.com/posts/view/maintaining-zweiversionen-von-php-mit-macports

Ja er hat! Ich hatte ein kleines Hin und Her mit Mark darüber und habe sein Shell-Skript angepasst, um zwischen PHP 5.3 und PHP 5.2.10 zu wechseln. Wenn Sie die integrierte MacPorts-Fähigkeit zum Aktivieren / Deaktivieren der Umgebungen verwenden, ist dies ein Kinderspiel. Darren Newton vor 14 Jahren 1
Ursprünglich wollte ich dies mit FastCGI nach folgendem (eher guten) Artikel versuchen: http://cuadradevelopment.com/blog/26/multiple-php-versions-with-apache-using-fastcgi-on-os-x / Leider konnte ich PHP 5.3 nicht dazu bringen, FastCGI unter suexec zu kompilieren und auszuführen (was ich nicht kenne), das hat mich etwas nervös gemacht, so dass sich die Lösung von Mark Story besser anfühlt. Darren Newton vor 14 Jahren 1
1
Nathan

Ich empfehle Ihnen, die gewünschte PHP-Distribution als Quelle herunterzuladen, und dann die ./configureParameteroptionen festzulegen (siehe ./configure --help), damit die Software entweder an einem eindeutigen Ort installiert wird oder die Versionsnummer an den Namen angehängt wird. Auf diese Weise wird beim Ausführen make installder PHP 5.3-Installation nicht überschrieben. Richten Sie schließlich ein separates Suffix-Mapping in Apache ein, das zu der gewünschten Version führt, oder überschreiben Sie das Standard-PHP-Mapping für die VirtualHostoder die DirectoryZeilengruppe, in der sich Ihre Skripts befinden.

Wie würden Xdebug und APC mit diesem Setup spielen? Darren Newton vor 14 Jahren 0
1

Ich verwalte einige Build-Skripte als Teil des Homebrew-Projekts, mit denen Sie genau dies (zumindest den Installationsteil) sehr leicht erledigen können. Ich habe darüber gebloggt - http://boztek.net/blog/2009/10/07/install-lamp-stack-source-mac-os-x-106-snow-leopard-using-homebrew

Sie, die DarwinPorts und / oder Fink verwenden, sollten sich wirklich über Homebrew informieren. Eno vor 12 Jahren 0
0
Garry

Eine Option wäre, eine andere Version von so etwas wie MAMP zu installieren und dann mit jeder Installation einzeln zu basteln.

0
Ich hatte diesen Artikel in meinen Kommentaren bereits vorher als vorrangig bezeichnet. Trotzdem danke. Darren Newton vor 14 Jahren 0
0
Duo

Dies ist mein eigener Bericht von vielen Monaten zurück:

http://ireallylikesushi.com/blog/2009/12/21/installing-both-zend-server-ce-php-5-2-php-5-3-on-snow-leopard/

Sehr einfache und saubere Lösung. Hoffentlich hilft das.

Ihr Link funktioniert nicht So ziemlich eine sinnlose Antwort! Lee Taylor vor 11 Jahren 1