1

У меня есть вопрос, противоположный тому, почему версия PHP отличается в phpinfo() и CLI? Мой вопрос отличается от этого, потому что я получаю ожидаемый PHP для CLI и неправильный для моего локального веб-сервера. Кроме того, предлагаемое там решение (изменение пути к "LoadModule" в apache2/httpd.conf) не работает для меня, поскольку версия PHP, установленная brew, не имеет аналогичного файла .so для загрузки в LoadModule.

Я запускал PHP 5.5 на Mac El Capitan. Я пытаюсь запустить Craft CMS на моей локальной машине, для которой требуется mcrypt, который установлен с PHP 5.6 и выше.

Используя brew, я установил PHP 5.6. Но когда я запускаю phpinfo(); в моей папке Craft я все еще на PHP 5.5.

Если я иду в командную строку и говорю, which php , я получаю:

php is /usr/local/bin/php
php is /usr/bin/php
php is /usr/local/bin/php

Затем /usr/local/bin/php -v дает мне: PHP 5.6.30 (cli) (built: Mar 11 2017 09:56:18)

и /usr/bin/php -v дает мне:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20121212/mcrypt.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20121212/mcrypt.so, 9): image not found in Unknown on line 0
PHP 5.5.36 (cli) (built: May 29 2016 01:07:06)

Единственное место, которое я знаю, что PHP вызывается для сервера, находится в etc/apache2/httpd.conf , где он LoadModule php5_module libexec/apache2/libphp5.so .

PHP для brew находится в /usr/local/Cellar/php56 , но там нет .so файла.

У меня также есть homebrew.mxcl.php56.plist в ~/Library/LaunchAgents , скопированный из установки brew.

Файл php.ini остается тем же самым из папки etc

Что я должен сделать, чтобы загрузить более новую версию PHP 5.6 вместо стандартной версии PHP 5.5?

0