docker镜像php-fpm找不到php.ini的解决办法

docker镜像php-fpm找不到php.ini的解决办法

       最近项目挪到PHP容器运行,有不少的问题,今天发现偶发性老是报以下错误

Cannot modify header information - headers already sent by

这个是因为output_buffering配置太低导致,只要修改成output_buffering=on就可以,于是直接到PHP容器里面想要修改php.ini配置,发现这个文件居然找不到,于是输入以下命令查找PHP配置目录

php -i |grep php.ini

得到以下结果

Configuration File (php.ini) Path => /usr/local/etc/php

于是进到/usr/local/etc/php 目录,发现只有php.ini-development 、php.ini-production文件以及conf目录,随机查看了php.ini-development文件内容,基本就是PHP配置文件,于是我们复制一份出来,输入以下命令

cp /usr/local/etc/php/php.ini-development /usr/local/etc/php/php.ini

这样就有了php.in,然后编辑php.in配置,修改以下配置

output_buffering=on

输出缓存不限制,然后重启php-fpm,让配置生效

kill -USR2 1

我们可以输出phpinfo,可以看到有php.ini

微信截图_20220623114249.png

这样就成功解决了这个问题。

0条评论

发表评论