Apache/Linux 为何会对这么大的 AVI 文件感到抓狂?

Apache/Linux 为何会对这么大的 AVI 文件感到抓狂?

我的主机在 Redhat Enterprise 4 上运行 Apache 2.0.63。我试图下载两个版本的电影,高清和标清,都是 DivX .avi 格式。我成功上传了 700mb 的标清文件,经过几天的上传,终于上传了 3gb 的高清文件。我可以毫无问题地访问和下载 700mb 的文件,但 3gb 的文件出现了一些非常奇怪的情况:

-我将 CHMOD 设置为 777,但尝试下载时仍然出现 403 Forbidden

-我通过 SSH 进入服务器并列出目录中的文件,3gb 文件的名称旁边有一个星号(表示它是可执行文件),而 700mb 文件没有。

-尝试重命名文件并更改扩展名,但似乎没有任何作用。

有人有什么想法吗?我应该重新上传文件吗?谢谢!

答案1

将您的 Apache 更新至 2.2,早期版本报告了提供大文件下载时出现的问题。

如果这不起作用,请尝试使用wget如下方法下载文件:

wget http://yourdomain.com/largefile.avi

看看是否有效。

更新:

http://php.net/manual/en/function.filesize.php

笔记: 由于 PHP 的整数类型是有符号的,而且许多平台都使用 32 位整数,因此 filesize() 可能会对大于 2GB 的文件返回意外结果。对于大小在 2GB 到 4GB 之间的文件,通常可以使用 来解决这个问题sprintf("%u", filesize($file))

看起来,即将向公众发布的 PHP 6.x 将包含对大文件的支持。

相关内容