編譯安裝php7時指定了--with-config-file-path=/usr/local/php7/etc,修改了 php.ini 的配置后重啟,但就是不生效。
出現Loaded Configuration File:(none)
編譯過程
要使用源碼中的phpize生成configure,
/usr/local/php/bin/phpize
接下來執行configure
./configure \
--prefix=/usr/local/php\
--with-mhash \
--with-openssl \
--with-config-file-path=/usr/local/php/etc \
--disable-short-tags \
--enable-fpm \
--with-fpm-user=php-fpm \
--with-fpm-group=php-fpm \
--enable-xml \
--with-libxml-dir \
--enable-bcmath \
--enable-calendar \
--enable-intl \
--enable-mbstring \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-zip \
--enable-mbregex \
--enable-mysqlnd \
--enable-mysqlnd-compression-support \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gd \
--enable-ftp \
--with-curl \
--with-xsl \
--with-iconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--enable-sysvsem \
--enable-inline-optimization \
--with-xmlrpc \
--with-gettext
這個里面的參數--prefix是你php安裝的目錄
--with-config-file-path=/usr/local/php/etc
這是你php.ini 的存放目錄
--enable-fpm
這個參數是生成你的php-fpm相關,沒有這個參數你編譯的php就沒有php-fpm的文件
接下來執行
make
make test
make install
php源碼的文件包中將php.ini-development復制過來修改名稱為php.ini
加載配置文件
phpinfo中參數是正確的,但出現
Loaded Configuration File:(none)
查看php.ini的文件位置
php -i|grep php.ini
方法一
/usr/local/php/sbin/php-fpm -y /usr/local/php/etc/php-fpm.conf -c /usr/local/php/etc/php.ini
重啟php和nginx
方法二
strace /alidata/server/php/bin/php -i 2> php_trace.log
less php_trace.log
找到加載php.ini 查詢目錄
在相應目錄下建立軟連接或者將etc下php.ini移植到目錄
ln -s etc/php.ini lib/php.ini或者 mv etc/php.ini lib/php.ini