问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

解决修改php.ini配置文件不生效的问题

创作时间:
作者:
@小白创作中心

解决修改php.ini配置文件不生效的问题

引用
1
来源
1.
https://www.cnblogs.com/zhangzhide/p/18529570

公司禅道研发反馈任务创建的多了就报:Allowed memory size of 33554432 bytes exhausted (tried to alloate 3643528 bytes) in lib/base/front/front.class.php on line 1315 when visiting /index.php?m=execution&f=task&id=28;通过报错即可得知,php的memory_limit默认是32M已经用光了。于是果断创建phpinfo.php文件查看php的配置。发现memory_limit果然是32M。

<?php phpinfo(); ?>

接下来我就说说我遇到的坑吧,它导致我修改完成之后一直没有生效。

1、找到php.ini文件修改memory_limit的值

我修改了/usr/local/php/lib/php.ini中的memory_limit的值,重启了php-fpm和nginx,然后再次查看phpinfo.ini所记录的值,发现没有生效。这种方式是好使的,因为我在另一台php主机上测试过了,可以修改成功,但是就这台部署了禅道的主机不生效。

2、修改php-fpm的配置文件。

后来了解到,php-fpm.conf中的配置优先级高于php.ini,可能会导致php.ini的修改无效。于是顺着这个思路找了过去。发现php-fpm.conf中并没有定义memory_limit这个参数。然后我往下又翻了翻配置发现了这么一句:include=/usr/local/php/etc/php-fpm.d/*.conf。然后我又到/usr/local/php/etc/php-fpm.d/目录下去看看,这一看,果然发现了罪魁祸首:

然后果断修改了这个值,由32M修改为512M;然后重启了php-fpm:

# 杀死pip-fpm的进程
for i in `ps aux |grep php-fpm |grep -v grep |awk '{print $2}'`;do kill -9 $i;done
# 重启php-fpm
php-fpm
# 重启nginx
nginx -s reload

再次查看phpinfo信息,修改成功:

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号