首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Apache服务器下载时,Web浏览器不会显示下载进度

从Apache服务器下载时,Web浏览器不会显示下载进度
EN

Server Fault用户
提问于 2009-12-14 13:43:18
回答 1查看 1.7K关注 0票数 1

Safari/Firefox/Chrome在下载大型文件时只显示一个不确定的进度条,尽管设置了内容长度标头。知道为什么会这样吗?这是一个标准的(-ish)Apache2.2安装。

代码语言:javascript
复制
bash# curl -I http://nodebox.net/download/nodebox2/nodebox-2.0.0.960-setup.exe
HTTP/1.1 200 OK
Date: Mon, 14 Dec 2009 13:35:04 GMT
Server: Apache/2.2.3 (Debian) DAV/2 SVN/1.4.2 mod_python/3.2.10 Python/2.4.4 PHP/5.2.0-8+etch15 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_wsgi/2.3 mod_perl/2.0.2 Perl/v5.8.8
Last-Modified: Mon, 14 Dec 2009 11:54:22 GMT
ETag: "11acd74-1e7c1de-ef263780"
Accept-Ranges: bytes
Content-Length: 31965662
Vary: Accept-Encoding
Content-Type: application/x-msdos-program
EN

回答 1

Server Fault用户

回答已采纳

发布于 2009-12-14 14:30:32

您所说的“中间进度栏”是什么意思?-它是根本没有显示在下载框中,还是只是没有显示进度。它显示的文件大小是多少?从您正在测试的机器连接到该服务器的速度是多少?

这可能是,您根本没有看到任何进展较小的文件,因为他们下降得太快,从来没有时间显示它。即使下载不是即时的,也可能是这样,因为过程不仅仅是“获取内容”--它是:

  1. 请求对象(这通常需要非常短的时间,而HTTPs则稍长,但如果服务器或链接繁忙,则可能会花费更长的时间)
  2. 等待第一个信息下降(如果这是脚本的结果,并且/或您使用的是mod_gzip或类似的情况,web服务器上的进程可能要等到整个脚本完成后才发送第一个字节的数据)
  3. 传输数据-对于小文件,这可能是视觉上瞬间的快速链接(进度条可能不会绘制,直到第一个字节到达,最后一个字节可能会到达零秒之后),所以进度条在那里,走得比你能看到的更快。
  4. 下载后的jigger-pokery (AV检查等等),这可能需要一段时间,这取决于您的设置。

只有在第三步,你才会期待一个进度条,而且它可能只是一个快速链接下载时间的一小部分。一些代理安排可能会加剧这种情况,因为它们可能会缓冲一个更大的文件,该文件在外部网络连接上传输需要几秒钟(或几十秒或更长时间),这样客户端应用程序就会看到请求发出,等待响应的第一个字节(在此期间,代理实际上正在获取该文件),并在一秒内从代理获得所有信息(因此,从代理的角度来看,上面的步骤3几乎是瞬间的)。

所有这些都是相当通用的--为了得到更具体的答案,您需要在问题中添加更多的细节和分析。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/94122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档