Как установить новый PHP в macOS

Как установить новый PHP в macOS

По умолчанию в macOS уже установлен PHP, но иногда требуется обновить конфигурацию или устновить другую версию PHP.

Я уже рассказывал про то, как установить и настроить PHP. Фактически до этого мы просто включали PHP в настройках Apache.

Недавно мне потребовалась поддержка расширения GD Freetype и пришлось установить другую версию PHP. На официальном сайте рекомендуют использовать уже готовые и сконфигурированные для этого пакеты.

Я воспользовался пакетами от Liip (https://php-osx.liip.ch). Это готовые сборки различных версий PHP, которые очень легко установить.

Устанавливаем PHP

Сразу замечу, что новая версия PHP установится параллельно с текущей, поэтому волноваться не стоит. Откройте терминал и выполните следующую команду:

curl -s https://php-osx.liip.ch/install.sh | bash -s 5.6

Данная команда автоматически скачает и установит в macOS PHP версии 5.6. Если нужна другая версия, укажите вместо 5.6 ее номер (например, можно указать версию 7.1).

Установка может занять некоторое время. У меня на это ушло около минуты.

Установка PHP в MacOS

В конце я получил следующее сообщение:

Restarting Apache
[Fri Mar 17 10:03:03.441097 2017] [so:warn] [pid 26302] AH01574: module php5_module is already loaded, skipping

Установка PHP в MacOS завершена

Оно означает, что установщик перезапустил Apache, но в настройках веб-сервера уже подгружается другой модуль PHP. Так и есть - подгружается тот PHP, который у меня уже был установлен в системе по умолчанию, и его загрузку нужно отключить в настройках Apache. Сделаем это.

Откроем файл конфигурации Apache, для этого выполните в терминале команду:

sudo nano /etc/apache2/httpd.conf

Найдите строку: LoadModule php5_module libexec/apache2/libphp5.so и закомментируйте ее (перед строкой нужно поставить символ решетки #). Сохраните и закройте файл.

Отключаем PHP в Apache

Осталось перезапустить Apache. Выполните в терминале команду:

sudo apachectl restart

На этом установка новой версии PHP завершена.

17.03.2017