Atualize seu Apache para o 2.2, versões anteriores relataram problemas com a oferta de arquivos grandes para download.
Se isso não funcionar, tente baixar o arquivo usando wget
da seguinte forma:
wget http://yourdomain.com/largefile.avi
e veja se isso funciona.
ATUALIZAÇÃO:
De link :
Note: Because PHP's integer type is signed and many platforms use 32bit integers, filesize() may return unexpected results for files which are larger than 2GB. For files between 2GB and 4GB in size this can usually be overcome by using
sprintf("%u", filesize($file))
.
Parece que o suporte para arquivos grandes será incluído no PHP 6.x, que será lançado ao público em breve.