猿问

安装好php为什么要复制一份php.ini 到/usr/local/php/lib/php.ini

安装好php为什么要复制一份php.ini 到/usr/local/php/lib/php.ini
我试过了 如果不复制一份 php也能正常运行 为什么要从安装包里复制一份php.ini 到 /usr/local/php/lib/php.ini 目录下呢

慕无忌1623718
浏览 379回答 11
11回答

郎朗坤

目前排名第一的 @TonyX 说的没错,给出了可以解决所有疑问的通用方法。但是对于这个问题并没有直接给出答案,如果我是题主,我是不想要这样的答案的。 回到楼主问题,为什么要拷贝到那个目录,那时因为 PHP 编译时指定了配置文件目录,而指定的目录是 /usr/local/php/lib 因此 PHP 启动时会去那个目录下读取 php.ini 的配置文件,不拷贝不影响 PHP 正常运行,只不过无法添加配置项罢了。要查看当前 PHP 会去哪个目录下找配置文件,可以在 phpinfo() 中看到,(命令行下运行 php -i 也可以),看到 'Configuration File (php.ini) Path' 和 'Scan this dir for additional .ini files' 两项,这里面记录了 PHP 加载 .ini 配置文件的路径。 建议题主下载一份 PHP 的 source code 自己尝试着去编译运行一遍。

慕莱坞森

。。。不需要复杂一份到那个目录啊, 复制到你编译安装时configure指定的php.ini配置文件目录里面。。 一般是/usr/local/php/etc这个目录。 你没复制也能运行时正常的, 你看下phpinfo里面加载的是哪个php.ini.

阿波罗的战车

/usr/local/php/lib/php.ini 里面有一些你在编译时进行配置的项目,如果你没有进行配置那么这里的文件和PHP默认启动时候的相关配置项是一样的,你也就没有必要进行复制。

慕的地8271018

只要php 在运行时能找 phpini 你放在那里都可以

慕娘9325324

编译时php时,如果没有指定--with-config-file-path, 默认就是上述目录: --with-config-file-path=PATH Set the path in which to look for php.ini [PREFIX/lib] 所以,需要复制到lib目录中。 php运行时,可以没有php.ini, 这时将使用默认参数值。

素胚勾勒不出你

shell键入 php --ini 查看PHP加载的配置。

慕码人2483693

没有php.ini文件,php会加载默认的配置,所以不会出错。 而指定了php.ini文件,是为了让你更灵活的配置php,非必需

慕森王

拷贝到得位置是安装php时候的参数--with-config-file-path的位置,指定这个文件主要是为了灵活配置

慕森卡

我遇到过,编译安装php7的时候,指定了--with-config-file-path的位置,指定位置下也有php.ini,可是还是加载了/usr/local/php/lib/php.ini。表示很是不解。
随时随地看视频慕课网APP
我要回答