php.ini 文件在哪里?
最近遇到一个问题,需要更改 php 的配置文件,在命令行中使用 php --ini
查看配置文件的位置,更改之后,重启 php ,发现并没有作用。经过学习,发现事情没有想象中的那么简单。
运行模式
php 有很多种不同的运行模式,其中常见的有以下几种。
- CLI 模式
- CGI 模式
- FastCGI 模式(FPM 模式)
- Module 模式
关于运行模式的详细解释,可参考文章。
PHP-FPM(PHP-FastCGI Process Manager)是 php 语言中实现了 FastCGI 协议的进程管理器,由 Andrei Nigmatulin 编写实现,已被 PHP 官方收录并集成到内核中。
找到配置文件
上面说到,php 可以在不同的模式下运行,所以不同的模式下,php 所加载的配置文件是不同的。例如开头说到的,在命令行中使用 php --ini
查看,可以看到一个配置文件,这个文件对应的是 cli 模式,即命令行模式。
如果运用程序是 web ,此时 php 处于 FastCGI(FPM) 运行模式下,所以我们需要确认对应的配置文件。其中一个方法是,在 index.php
中 echo phpinfo()
,然后访问网站查看。
修改这里的配置文件才会对 web 运用起作用。当然,别忘了重新加载配置或者重启一下。
其他的配置文件
通常来说,配置文件默认都是在 php 的安装目录下。例如我的是在 /etc/php/7.3
目录下。
可以看到有不同的文件夹,对应了不同的运行模式,配置文件就装在里面。
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: