最近项目挪到PHP容器运行,有不少的问题,今天发现偶发性老是报以下错误
Cannotmodifyheaderinformation-headersalreadysentby
这个是因为output_buffering配置太低导致,只要修改成output_buffering=on就可以,于是直接到PHP容器里面想要修改php.ini配置,发现这个文件居然找不到,于是输入以下命令查找PHP配置目录
php-i
grepphp.ini
得到以下结果
ConfigurationFile(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-USR21
我们可以输出phpinfo,可以看到有php.ini
这样就成功解决了这个问题。
来源于网络