长时间 AJAX 请求后未找到 404
Posted
技术标签:
【中文标题】长时间 AJAX 请求后未找到 404【英文标题】:404 Not Found after a long AJAX request 【发布时间】:2014-06-23 15:27:33 【问题描述】:我有一个功能可以一次性发送大量电子邮件。
提交表单 -> AJAX 请求 -> 发送电子邮件功能 -> 回显响应
当请求大约需要 30 秒时,一切都很好,我的请求返回了我需要的数据,我可以继续。当请求需要更长的时间(大约 2 分钟或更长时间)时,响应会以 404 Not found 的形式返回。
我已经尝试调试回显我的响应的代码部分,但它从未被命中。
以为可能是超时了,所以...
尝试在php.ini
中增加max_execution_time
和max_input_time
。
尝试在nginx.confd
中增加keepalive_timeout
。
不管这个404
如何,所有的电子邮件都会被发送,我的 php 文件在请求完成时不会发送响应(除非如前所述,由于少量电子邮件不需要很长时间)
使用 openSUSE 12.2、php-fpm 5.4、nginx、MooTools 运行的网站,没有 php 框架 使用 PEAR mail::factory 发送电子邮件
服务器不是我设置的,我是公司的新员工
愿意尝试任何建议...
【问题讨论】:
也许中间有一个代理在 30 秒后退出并发送 404 给你? 【参考方案1】:想通了我的问题,NGINX 有以下设置
fastcgi_read_timeout 120;
这是timing out
我的请求。在我写问题时意识到这一点并写了php-fpm
【讨论】:
以上是关于长时间 AJAX 请求后未找到 404的主要内容,如果未能解决你的问题,请参考以下文章
Codeigniter 404 Page Not Found 找不到您请求的页面