Как только я перешел на Yosemite, мой PHP перестал работать. После быстрого поиска я нашел это руководство, которое отлично работало на моем рабочем компьютере.
Когда я попробовал то же самое на своем домашнем Mac, это не сработало. 1) на моем домашнем Mac изначально был установлен энтропийный PHP, поэтому я следовал их руководству по удалению и установке более новой версии, но это не сработало.
Я также пробовал использовать стандартный PHP, который вышел из коробки и тоже не работал.
Чтобы уточнить: я очистил установку Yosemite, затем я импортировал моего пользователя и настройки. Я раскомментировал эту строку на httpd.conf
LoadModule userdir_module libexec/apache2/mod_userdir.so
а также эти два:
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
Я не хочу использовать сайт пользователя (то есть: localhost/~ user/myphpapp) и предпочел бы использовать (localhost/myphpapp), но я следовал инструкциям, чтобы установить сайт пользователя, и это тоже не сработало. (Я тогда вернулся обратно)
Чтобы уточнить, что это значит, это не работает: когда я захожу в localhost/php/info.php
(где в info.php есть phpinfo ()), я могу получить строку <?php phpinfo(); ?>
но это не выполняется. Когда я перемещаюсь по моим приложениям, файлы видны, что говорит о том, что apache работает нормально, просто PHP не выполняет файлы.
Другое дело, что сам php установлен. Выполнение php --version
на терминале дает мне следующее:
PHP 5.6.2 (cli) (built: Oct 21 2014 21:47:13)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans
и which php
/usr/local/php5/bin/php
мой httpd.conf:
LoadModule php5_module /usr/local/php5/libphp5.so
это то, что энтропия дала мне после установки своего скрипта. Я могу видеть libphp5.so в указанном выше каталоге (на самом деле это символическая ссылка, но это нормально, я думаю)
Когда я выполняю sudo apachectl -t
я получаю Syntax OK
и да, я перезапускаю apache после моего последнего раунда изменений. Даже перезагрузить компьютер, чтобы быть уверенным.
И наконец, когда я php app/console server:run
из приложения symfony, он работает как положено, PHP определенно работает и работает нормально.
Мое единственное предположение, что мой httpd.conf
как-то сломан, но я не знаю, как это исправить.
Кто-нибудь может пролить свет на это?
Мне спасибо