PHP执行时间超过max_execution_time…有时。

|| 我有一个PHP类,一旦调用,将时间限制设置为60秒。此类的唯一特殊之处是它使用curl_multi_exec()。
set_time_limit(60);
ini_set(\'max_execution_time\', 60);
问题在于,在Apache的/ server-status页面下,该页面和另一个使用单线程curl的页面超过了它们的max_execution_time,有时长达200秒! 我想念什么?有没有一种方法可以设置Apache终止运行时间超过90秒的脚本(甚至连接)?     
已邀请:
从手册中:   
set_time_limit()
函数和配置指令
max_execution_time
仅影响脚本本身的执行时间。确定脚本已运行的最长时间时,不包括执行脚本之外发生的活动上的任何时间,例如使用ѭ3进行系统调用,流操作,数据库查询等。 因为curl请求属于此类别,所以不计算等待请求完成所花费的时间。您应该将curl设置
CURLOPT_TIMEOUT
设置为较低的值,或者自己监视执行脚本所花费的时间。     
啊哈!设置该配置时,置顶栏中的信息会自行重置,例如:
sleep(10);
set_time_limit(20);
sleep(10);
set_time_limit(5);
sleep(10); // dies after 5 seconds
总运行时间约为30秒。 关于
curl_exec_multi
,您可以设置CURL超时选项而不是PHP之一。这取决于您认为谁更愿意死-curl连接或完整请求。     

要回复问题请先登录注册