页面的超时时间同时受nginx和php的配置影响。

当是nginx影响到时,出错提醒如下图(图1):

ngnix+php 文件上传处理超时的解决办法

 =============================================================

而当是php的脚本最大执行时间(默认值为30秒)影响到时,出错的提醒如下图(图2):

ngnix+php 文件上传处理超时的解决办法

 

nginx配置中fastcgi_read_timeout指定了nginx接受后端fastcgi响应请求超时时间,默认是60秒,如果fastcgi在规定时间内没有返回数据,就会直接返回图1的提示给客户端。

所以把php的脚本最大执行时间设置大一点,并在及时返回给nginx,这样就避免了超时的问题。

设置php的脚本最大执行时间使用这个函数:bool set_time_limit ( int $seconds );

及时返回数据给nginx可以这么写:

if ($currentRow % 500 == 0) { // 每处理500行数据就返回一个空格并清空输出缓存
echo " ";
ob_flush();
flush();
}

 

相关文章:

  • 2021-12-19
  • 2022-12-23
  • 2021-11-18
  • 2021-09-13
  • 2021-11-14
  • 2021-07-11
  • 2021-09-16
猜你喜欢
  • 2021-09-30
  • 2022-01-06
  • 2022-12-23
  • 2021-10-14
  • 2021-07-15
  • 2022-12-23
相关资源
相似解决方案