Назад | Перейти на главную страницу

Скомпилировал PHP, как мне загрузить его в Apache?

Я скомпилировал и установил PHP7.1.7 из исходников на Ubuntu16. Я последовал этому руководству: http://www.shaunfreeman.name/installing-php-7-on-ubuntu-16-04/

Я проследил за ним до места, где он что-то добавляет в файлы modules.ini.

Теперь Apache не загружал php, поэтому я установил

sudo apt-get install libapache2-mod-php

Теперь apache загрузил PHP, но версии были разными, и также не было драйверов PDO, с которыми я скомпилировал. Я проверил это с помощью phpinfo ()

Apache показал 7.0.18, а я 7.1.7. Я не знаю, как была установлена ​​эта вторая версия (возможно, libapache2-mod-php?)

Также исполняемый файл php в / usr / bin был 7.0.18, поэтому я удалил его и создал символическую ссылку на мой 7.1.7, поэтому, по крайней мере, в терминале php работает с правильной версией.

Мне нужно заставить Apache работать с этой новой версией.

Вещи пробовали:

Есть два способа выполнить файлы php из apache: с помощью модуля (это то, что дает вам установка пакета mod_php. Если вы хотите это сделать, вам нужно отредактировать файл httpd.conf и загрузить правильный модуль. Я бы рекомендовал удаление упакованной версии, если вы хотите, чтобы скомпилированная версия уменьшила путаницу.

Обычно вывод команды "make install" в каталоге компиляции php дает вам инструкции по добавлению модуля в конфигурацию apache.

С другой стороны, на странице, на которую вы ссылаетесь, обсуждается второй метод использования PHP: в качестве внешнего процесса (в данном случае с использованием FPM). Вам необходимо настроить apache для взаимодействия с этим внешним процессом.

Поиск "apache php fpm" в вашем любимом браузере должен дать ряд руководств по необходимой конфигурации apache (примечание: вы также увидите примеры конфигурации для nginx; файлы конфигурации для apache и nginx не взаимозаменяемы, поэтому убедитесь, что вы: перечитываю правильную вещь).