У меня проблема, когда php и php-fpm не могут найти php.ini. Я установил 5.6.13 из исходников. Вопрос
очень похож, но решения там мне не помогли.
Config.nice выглядит следующим образом
#! /bin/sh
#
# Created by configure
'./configure' \
'--prefix=/usr/local' \
'--localstatedir=/var' \
'--sysconfdir=/etc/php-fpm' \
'--with-config-file-path=/etc/php-fpm' \
'--enable-fpm' \
'--with-mysql=mysqlnd' \
'--with-mysqli=mysqlnd' \
'--enable-cli' \
'--with-zlib' \
'--with-openssl' \
'--with-libdir=lib64' \
'--with-gd' \
'--enable-session' \
'--enable-soap' \
'--with-freetype-dir' \
'--enable-gd-native-ttf' \
'--with-ldap' \
'--with-pdo-mysql=mysqlnd' \
'--enable-zip' \
'--with-mcrypt=/usr/local' \
'--enable-mbstring' \
'--with-curl' \
'--enable-intl' \
'--with-xsl' \
'--with-tidy' \
'--enable-pcntl' \
"$@"
Я использовал этот config.nice на двух других серверах с той же версией PHP. Все серверы RHAT 5.11. У всех есть nginx.
Если я сбегу
echo "<?php phpinfo() ?>" | strace php-fpm 2>&1 | grep php.ini
Я получил:
open("/usr/local/sbin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
если я бегу
php -i | grep php.ini
Я получил:
Configuration File (php.ini) Path => /etc/php-fpm
Loaded Configuration File => (none)
Если я бегу:
php --ini
Я получил:
Configuration File (php.ini) Path: /usr/local/lib
Loaded Configuration File: (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
Создание символической ссылки позволит PHP найти php.ini в / etc / php-fpm, и я тоже могу использовать -c, но это не объясняет, почему он не берет его по умолчанию и не согласуется с моими поведение других серверов.
Кто-нибудь когда-нибудь испытывал нечто подобное?
Я попытался выполнить новую установку без make clean или make clean all, но это не сработало.
Я закончил тем, что запустил make clean и make clean all и снова переделал всю установку, и это сделало это!