不同网络中的Ajax超时

时间:2015-06-08 04:27:19

标签: php ajax excel extjs timeout

我已经在网上搜索过这个问题并且出现了一堆但是他们没有为这个问题提供明确的解决方案。

问题在于,我有Web应用程序,它已经在公共DNS中生成报告,然后将其导出为Excel文件。当我在我的网络中尝试这个时,我能够在执行Ajax的5-6分钟内获得excel文件。

但是当我的客户端执行此操作时,在与我不同的地理位置,ajax请求将仅在30秒后到期(超时)!我不明白为什么只有30秒但是当我执行它时它将达到6分钟。

在我的php.ini中,我已经设置了这个:

 max_execution_time = 0
 max_input_time = 0

在我的php中,我把它放在脚本的开头:

    set_time_limit(0);

在我的ajax请求中,BTW我正在使用EXTJS 4:

  Ext.Ajax.request({
      url: 'validurl',
      params: {},
      method: "POST",
      waitMsg: "Exporting data. Please wait....",
      timeout: 900000,
  ......
  ......

什么/哪里可能是问题?应用程序?网络?服务器?我该如何解决这个问题?

谢谢。

1 个答案:

答案 0 :(得分:0)

尝试在Ext.Ajax单例中设置超时配置:

Ext.Ajax.timeout = 360000;
Ext.Ajax.request({
    url : '',
    params : {},
    method: 'POST'
});