Heim > Artikel > Backend-Entwicklung > 环境搭建 - 安装php时的一个不解的问题(google了N次无果)
这个问题尝试百度,google了很多次都没有找到满意的答案
安装完php后,打印phpinfo(),会显示一个叫Loaded Configuration File的选项,
这个选项是用来载入php.ini文件的,php.ini文件中可能载入了一些扩展(如:redis.so , phalcon.so , mcrypt.so .....)
我使用的是Linux+Nginx(1.6.2)+Mysql+PHP(5.6.1)环境,php安装目录:/usr/local/php5.6,在/usr/local/php5.6/lib/下存在php.ini文件,但是我载入的确不是这个ini文件,根据打印的phpinfo信息中显示被载入的ini文件是/usr/local/lib/php.ini
现在问题来了,我希望载入的php.ini文件是/usr/local/php5.6/lib/php.ini 而不是/usr/local/lib/php.ini ,那么我该如何自定义被载入的php.ini文件。
由于电脑上之前也安装过其他php版本,不过都已经不用了,而且/etc/profile环境变量中使用的是php5.6,新安装的这个。尝试过很多方法都不能载入自定义的位置的php.ini文件(比如设置ini文件环境变量,编译php的时候加上--with-config-file-path,这些)
回到主题,如何自定义php.ini文件路径(即打印的phpinfo()中的Loaded Configuration File 选项中的文件路径)
求解啊,google了很多方法,看了很多答案,都不是我想要的。大神赶紧支个招
这个问题尝试百度,google了很多次都没有找到满意的答案
安装完php后,打印phpinfo(),会显示一个叫Loaded Configuration File的选项,
这个选项是用来载入php.ini文件的,php.ini文件中可能载入了一些扩展(如:redis.so , phalcon.so , mcrypt.so .....)
我使用的是Linux+Nginx(1.6.2)+Mysql+PHP(5.6.1)环境,php安装目录:/usr/local/php5.6,在/usr/local/php5.6/lib/下存在php.ini文件,但是我载入的确不是这个ini文件,根据打印的phpinfo信息中显示被载入的ini文件是/usr/local/lib/php.ini
现在问题来了,我希望载入的php.ini文件是/usr/local/php5.6/lib/php.ini 而不是/usr/local/lib/php.ini ,那么我该如何自定义被载入的php.ini文件。
由于电脑上之前也安装过其他php版本,不过都已经不用了,而且/etc/profile环境变量中使用的是php5.6,新安装的这个。尝试过很多方法都不能载入自定义的位置的php.ini文件(比如设置ini文件环境变量,编译php的时候加上--with-config-file-path,这些)
回到主题,如何自定义php.ini文件路径(即打印的phpinfo()中的Loaded Configuration File 选项中的文件路径)
求解啊,google了很多方法,看了很多答案,都不是我想要的。大神赶紧支个招
php和php-fpm都可以通过参数-c指定php.ini文件所在目录:
php -h 和 php-fpm -h 可见
<code>-c <path>|<file> Look for php.ini file in this directory</file></path></code>
编译安装时就可以通过 configure相关的的配置项设置路径,具体请参考 ./configure --help 查看php 的帮助文档!
--with-config-file-path=/usr/local/php5.6/lib/ php.ini 存放位置
--with-config-file-scan-dir=/usr/local/php5.6/lib/conf.d 扩展文件目录
你手动开启php-fpm可以通过指定-c参数来确定加载的php.ini php-fpm.conf位置,但是默认位置只能通过编译configure 参数来指定