为了账号安全,请及时绑定邮箱和手机立即绑定

如何能在php-fpm下获得所有输出,或者php-fpm下php的输出结果是输出到哪里?

如何能在php-fpm下获得所有输出,或者php-fpm下php的输出结果是输出到哪里?

PHP
MM们 2023-04-18 19:15:38
php-fpm连接模式下使用pcntl_fork创建子进程,一段最简单的代码如:<?phpfor ($i = 0;$i < 2;$i++) {    pcntl_fork();    print_r('-'); }在cli模式下输出6个‘-’,但是在php-fpm连接模式下只会输出2个‘-’,即php-fpm连接时只能输出主进程或某个子进程的结果。如何能在php-fpm下获得所有输出,或者php-fpm下php的输出结果是输出到哪里?有没人遇到过这问题?
查看完整描述

2 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

没遇到过。我ubuntu下用apt-get安装的php-fpm默认是禁用pcntl模块的,也把这些函数都写到了disabled_functions里面了。

php-fpm自己有一个管理进程,本来就不应该使用这个函数,否则行为会不确定,比如说管理进程可能会杀掉过多的进程。


查看完整回答
反对 回复 2023-04-21
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

pcntl_fork是只能在cli下的,php-fpm不支持,要想做到,可以在php-fpm下调system方法或popen方法去执行一个cli程序

查看完整回答
反对 回复 2023-04-21
  • 2 回答
  • 0 关注
  • 109 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信