如何查看php-fpm当前已加载的配置信息?
没问题,咱们来解决怎么查看已加载的PHP-FPM配置参数的问题——你说得对,这些属于FPM进程管理器层面的配置,确实没法通过phpinfo()获取到,下面给你几个实用的方法:
方法1:用PHP-FPM命令直接输出解析后的所有配置
这是最直接的方式,能获取到所有生效的配置参数(包括你自定义的设置和未配置时的默认值),完全对应官方文档里的所有FPM配置项。
根据你的PHP版本,执行对应的命令:
- 对于PHP 7.3及以上版本:
php-fpm --show-config - 对于PHP 7.3以下的旧版本:
php-fpm -tt
注意:如果系统里有多个PHP版本,可能需要指定具体的FPM二进制文件路径,比如
/usr/sbin/php-fpm7.4或者/usr/local/php/bin/php-fpm。
方法2:查看PHP-FPM正在使用的配置文件
如果你想查看自己主动配置的参数,可以先确认FPM加载的配置文件路径,再直接查看文件内容:
先检测配置文件并获取路径:
php-fpm -t执行后会输出类似这样的内容,其中包含了主配置文件的路径:
[16-Sep-2024 10:30:00] NOTICE: configuration file /etc/php/8.2/fpm/php-fpm.conf test is successful
查看主配置文件以及它引用的子配置(比如pool目录下的站点配置):
cat /etc/php/8.2/fpm/php-fpm.conf cat /etc/php/8.2/fpm/pool.d/www.conf这种方式能看到你手动设置的参数,但默认参数不会显示,需要结合官方文档对比参考。
补充说明
为什么phpinfo()看不到这些配置?因为phpinfo()展示的是PHP脚本运行时的配置(比如php.ini里的参数),而PHP-FPM的配置是进程管理层面的(比如进程数量、监听端口、运行用户权限等),属于FPM守护进程本身的设置,和PHP脚本的运行环境是分离的,所以无法通过phpinfo()获取。
内容的提问来源于stack exchange,提问作者Chris Stryczynski

