我正在尝试使用以下内容下载.tgz文件:
$file = '/var/www/upload/myfile.tgz';
if (file_exists($file))
{
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}
问题在于,当我尝试提取下载的文件时
使用tar
给出了以下错误:
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
注意:尝试提取原始文件时不会发生此错误。
答案 0 :(得分:0)
当我将代码移动到单独的.php文件
时,它工作正常