Установите несколько сред PHP на OS X Snow Leopard

6566
Darren Newton

Я только что обновил свой MBP до Snow Leopard (OS X 10.6), который взял PHP до 5.3

Это замечательно, за исключением того, что я использую свой MBP в качестве машины для разработки и использую множество PHP-библиотек и фреймворков (а именно CakePHP 1.2), которые на данный момент не совместимы с PHP 5.3. В частности, CakePHP не имеет стабильной версии для PHP 5.3, поэтому не стоит обновлять фреймворк (и все равно рабочие серверы находятся под PHP 5.2).

Есть ли способ установить PHP 5.2.9 вместе с PHP 5.3, а затем с помощью httpd.conf или .htaccess сообщить Apache, какую версию PHP использовать для определенного каталога?

В качестве альтернативы есть ли способ сделать это с MacPorts?

Спасибо!

4

6 ответов на вопрос

9
Predominant

Марк Стори написал отличную статью о том, как этого добиться. Он является основным разработчиком CakePHP и использует эту настройку для работы и разработки CakePHP.

http://mark-story.com/posts/view/maintaining-two-versions-of-php-with-macports

Да, он сделал! У меня была небольшая переписка с Марком по этому поводу, и я адаптировал его сценарий оболочки для переключения между PHP 5.3 и PHP 5.2.10. Использование встроенной в MacPorts возможности активировать / деактивировать среду делает это несложно, и все это делается в стиле «mac». Darren Newton 14 лет назад 1
Первоначально я собирался попытаться сделать это с помощью FastCGI, следуя этой (довольно хорошей) статье: http://cuadradevelopment.com/blog/26/multiple-php-versions-with-apache-using-fastcgi-on-os-x / К сожалению, я не смог заставить PHP 5.3 скомпилировать и запустить FastCGI под suexec (с которым я не знаком), я немного нервничал, поэтому решение Марка Стори выше было более удобным. Darren Newton 14 лет назад 1
1
Nathan

Я предлагаю скачать дистрибутив PHP, который вы хотите использовать в качестве источника, а затем установить ./configureпараметры (см. ./configure --help), Чтобы программное обеспечение устанавливалось либо в уникальном месте, либо с добавлением номера версии к имени. Таким образом, при запуске make installPHP 5.3 установка не перезаписывается. Наконец, установите в Apache отдельное сопоставление суффиксов, которое направляет вас к нужной версии, или переопределите сопоставление PHP по умолчанию для раздела VirtualHostили Directoryраздела, в котором расположены ваши скрипты.

Как Xdebug и APC будут играть с этой настройкой? Darren Newton 14 лет назад 0
1

Я поддерживаю некоторые сценарии сборки как часть проекта Homebrew, который позволит вам сделать это (по крайней мере, часть установки) очень легко. Я написал об этом в блоге - http://boztek.net/blog/2009/10/07/install-lamp-stack-source-mac-os-x-106-snow-leopard-using-homebrew

Ребята, вы используете DarwinPorts и / или Fink, действительно стоит попробовать Homebrew. Eno 12 лет назад 0
0
Garry

Один из вариантов - установить другую версию чего-то вроде MAMP, а затем поработать с каждой установкой индивидуально.

0
Я уже назвал эту статью в моих комментариях к преобладающим. Спасибо хоть. Darren Newton 14 лет назад 0
0
Duo

Это мое собственное письмо от многих месяцев назад:

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

Очень простое и чистое решение. Надеюсь, это поможет.

Ваша ссылка не работает. Так что, в значительной степени бесполезный ответ! Lee Taylor 11 лет назад 1

Похожие вопросы