脚本宝典收集整理的这篇文章主要介绍了PHP-FPM fastcgi_finish_request可靠吗?,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
看起来PHP在fastcgi_finish_request之后没有执行所有脚本.
在日志文件中,我找不到关于此部分的通知,没有警告,没有错误或违规行为.
使用文档中未提及的fastcgi_finish_request有限制或提示吗?
我会更多地测试它并向bugs.PHP.net提交一个bug,也许吧.
更新:
调用fastcgi_finish_request()后,任何显式或隐式输出刷新都将导致退出PHP脚本,而不会出现任何警告或错误.换句话说,在调用fastcgi_finish_request()之后调用flush()将表现得像调用exIT()而不是flush().
代码重现:
function writestamp($case,$file){ file_put_contents($file,"". $case . ": " . time() . "" . PHP_EOL,FILE_APPEND); } // Flush buffers and stop output buffering while (@ob_end_flush()); // Destroy session,otherwise request can't be finished if(session_status() > 1) session_destroy(); $file = tempnam(Sys_get_temp_dir(),'flushbug_'); echo 'Writing 4 timestamps to: '.$file; // this one gets called writestamp('1',$file); // and this register_shutdown_function('writestamp','4',$file); // finish the request fastcgi_finish_request(); // as does this writestamp('2',$file); // but this one does NOT - calling flush() after fastcgi_finish_request() exits PHP without errors or warnings flush(); writestamp('3',$file);
以上是脚本宝典为你收集整理的PHP-FPM fastcgi_finish_request可靠吗?全部内容,希望文章能够帮你解决PHP-FPM fastcgi_finish_request可靠吗?所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。