Почему PHP не перекомпилируется с nginx?

PHP не перекомпилируется должным образом.

У меня PHP 7.2 установлен на Nginx с использованием php-fpm на Centos 7. Я перекомпилирую php с большим количеством опций, используя ./configure, make clean, make, make test и make install.

Все работает хорошо и никаких ошибок не выдается, кроме обновленного php
компиляция не отражается на phpinfo (); Таблица. Если вы видите
«Дата постройки» это не меняется. «Настроить команду» также не обновляется после перекомпиляции.

Почему php не может быть перекомпилирован и «Дата постройки» не обновляется, а «Настроить команду» также не отражает мои изменения?

Я перезапустил nginx, перезапустил php-fpm и до сих пор без изменений. Я могу без проблем редактировать файл php.ini, и они обновляются, но сам php не обновляется после перекомпиляции и добавления дополнительных опций (—with-openssl). Я даже перезапустил сервер. PHP файлы обслуживаются нормально.

Кто-нибудь может помочь?

-1

Решение

Я только что понял это примерно через полдня.

Причина, по которой новая перекомпиляция php не была распознана, была в том, что мне нужно было вручную скопировать новую обновленную программу php-fpm в каталог / usr / local / bin, например так:

cp sapi/fpm/php-fpm /usr/local/bin

И это исправило это. Таким образом, php WAS перекомпилировался корректно, но система этого не увидела, поскольку php-fpm не был скопирован вручную в каталог, из которого nginx извлекает php-fpm. Файл должен быть перезаписан, когда php-fpm выключен.

Бонусный совет

Это моя команда для перезагрузки php, php-fpm и nginx после перекомпиляции:

# gracefully stop the php-fpm process
pkill -15 php-fpm

# copy the new recompiled php-fpm to the executable directory
cp -f sapi/fpm/php-fpm /usr/local/bin

# start php-fpm
/usr/local/bin/php-fpm

# signal nginx to reload
nginx -s reload

Все в одной строке:

pkill -15 php-fpm && cp -f sapi/fpm/php-fpm /usr/local/bin && /usr/local/bin/php-fpm && nginx -s reload
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]