我阅读了@Dmitri的原始example of how to use fastcgi_finish_request()问题并尝试按照index.php中的Kohana 3.1设置中的答案进行操作:
echo Request::factory()
->execute()
->send_headers()
->body();
在那之后,我补充道:
fastcgi_finish_request();
sleep(5);
最初,我认为它有效。但后来我意识到只适用于每个其他请求。例如:
它继续这样。我错过了什么吗?就像在php5-fpm配置文件中设置一样?
使用Suhosin-Patch,Nginx运行PHP 5.3.5-1ubuntu7.2
答案 0 :(得分:1)
在致电session_write_close()
以解决此问题之前致电fastcgi_finish_request()
:
session_write_close();
fastcgi_finish_request();
sleep(5);
答案 1 :(得分:1)
在服务器响应本身旁边(您可以使用fastcgi_finish_request
函数控制并确保它以这种方式工作),可能有其他资源阻止(下一个)脚本提前启动。
这可以是文件锁定(会话流行)和其他东西。由于您没有共享很多代码而且我们没有看到您的Kohana配置,因此您应该查看您使用的组件以及他们获得的资源。
答案 2 :(得分:0)
是不是因为您的Web服务器一次只处理一个php实例并且它仍然令人兴奋的是以前的脚本?