2012-01-16 52 views
0

我浏览过网站,无法找到我的问题的答案。我试图从我的服务器上下载一个winrar文件(这是1GB),每当我尝试时,它都会给我一个同名的winrar文件,只有9kb。这是我的标题。我对可下载的内容非常陌生,所以不要取笑我。 :D浏览器不会下载正确的文件

header('Content-Disposition:attachment; filename="java.rar" '); 

我假设我需要更多。哈哈哈! 我不断看到人们使用header('Content-type: application/pdf');以上的处置。这是否支持rar格式,还是我需要使用它作为zip

+0

9k表示脚本在任何“真实”之前死亡可以脱身。你如何发送文件的内容?请记住,默认情况下,PHP有内存限制,如果你将整个文件加载到内存中,你可以很容易地超过这个限制,并杀死脚本。 – 2012-01-16 19:31:35

+0

你看过文件的内容吗?是否有可能发回页面内容而不是文件? – Joe 2012-01-16 19:32:10

回答

1

可能您的脚本超时,只有1GB文件中的一小部分正在发送。您可以尝试增加time limit,但IMO需要直接链接这样一个大文件,以使其可下载。

如果你想计算文件下载量,你可以链接到一个PHP脚本,这将增加计数器,并将浏览器直接重定向到文件。

+0

我该怎么做?只需重定向到直线路径? – 2012-01-16 19:38:23

+0

是 - 'header('Location:http://www.yoursite.com/java.rar');' – 2012-01-16 19:49:20

+0

ha!这正是我所做的。它效果很好。谢谢!看起来很明显,现在。 – 2012-01-16 20:26:30