PHP配置文件解析-php.ini与php-cli.ini、php-fpm.conf
php.ini是PHP解析器的配置文件php-cli.ini是PHP命令行解析器的配置文件php-fpm.conf是PHP-FPM进程管理器的配置文件,对单一进程进行配置
-
cli命令行模式与fpm模式
cli是命令行模式,直接在命令行运行。FPM模式,fpm结合Nginx/Apache,作为其扩展对php文件进行处理。当通过命令行(cli)执行php脚本时,使用的php-cli.ini配置当通过FPM运行,使用的php.ini内的配置
//获取php.ini地址获取php --ini //php-cli.conf配置命令行查看php -ini
pid:12583 Worker[12583] process terminated with ERROR: E_ERROR "Allowed memory size of 134217728 bytes exhausted (tried to allocate 995328 bytes)
当服务在命令行执行启动时,修改内存限制,需要修改php-cli.ini内的memory_limit参数,修改php.ini是不生效的。
当服务通过FPM模式,结合apache/nginx运行时,修改php.ini内的memory_limit。
此时如果php-fpm.conf或其引入的扩展文件对内存进行了配置,即php_admin_value[memory_limit]在扩展内配置(一般默认处于注释状态或不配置,将使用php.ini内的配置),将使用php_admin_value[memory_limit]内配置的内存值(phpinfo()内也将展示优先级最高的配置)。
这里是有一个优先级关系的,php-fpm.conf内配置的参数会覆盖php.ini内的配置
php-fpm.conf > ini_set( ) > php.iniphp_admin_value[memory_limit]=256 > ini_set('memory_limit', '256M') >memory_limit = 256M
来源地址:https://blog.csdn.net/nw_ningwang/article/details/125431085
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341