为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

PHP
慕无忌1623718 2019-03-13 23:26:19
安装好php为什么要复制一份php.ini 到/usr/local/php/lib/php.ini 我试过了 如果不复制一份 php也能正常运行 为什么要从安装包里复制一份php.ini 到 /usr/local/php/lib/php.ini 目录下呢
查看完整描述

11 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

目前排名第一的 @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 自己尝试着去编译运行一遍。

查看完整回答
反对 回复 2019-03-18
?
慕莱坞森

TA贡献1810条经验 获得超4个赞

。。。不需要复杂一份到那个目录啊,
复制到你编译安装时configure指定的php.ini配置文件目录里面。。
一般是/usr/local/php/etc这个目录。

你没复制也能运行时正常的, 你看下phpinfo里面加载的是哪个php.ini.

查看完整回答
反对 回复 2019-03-18
?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

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

查看完整回答
反对 回复 2019-03-18
?
慕的地8271018

TA贡献1796条经验 获得超4个赞

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

查看完整回答
反对 回复 2019-03-18
?
慕娘9325324

TA贡献1783条经验 获得超4个赞

编译时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, 这时将使用默认参数值。

查看完整回答
反对 回复 2019-03-18
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

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

查看完整回答
反对 回复 2019-03-18
?
慕码人2483693

TA贡献1860条经验 获得超9个赞

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

查看完整回答
反对 回复 2019-03-18
?
慕森王

TA贡献1777条经验 获得超3个赞

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

查看完整回答
反对 回复 2019-03-18
?
慕森卡

TA贡献1806条经验 获得超8个赞

我遇到过,编译安装php7的时候,指定了--with-config-file-path的位置,指定位置下也有php.ini,可是还是加载了/usr/local/php/lib/php.ini。表示很是不解。

查看完整回答
反对 回复 2019-03-18
  • 11 回答
  • 0 关注
  • 378 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信