如何解决表单提交后通过php下载tar文件
我有一个用户填写的表格,然后按“保存”。表单数据通过AJAX发送到php文件进行处理。 php文件将表单数据写入文件,并压缩了多个文件。然后,我希望通过浏览器下载tar文件。
当用户按下“保存”时,表格数据被写入文件。表单挂起〜30秒,将tar文件写入我的屏幕,并清除了表单。下载代码似乎很简单:
$filename = '/var/www/html/temp.tar';
ob_clean();
header( 'Content-Type: archive/tar' );
header( 'Content-Disposition: attachment; filename="' . basename( $filename ) . '"' );
header( 'Content-Transfer-Encoding: binary' );
header( 'Content-Length: ' . filesize( $filename ) );
readfile( $filename );
我尝试了各种Content-type行,例如
header( 'Content-Type: application/x-tar' );
header( 'Content-Type: application/tar' );
header( 'Content-Type: application/octet-stream' );
我的httpd / error_log或Firefox控制台中没有错误。 tar文件存在,出于测试目的,它是777。
我不知所措。
解决方法
尝试使用“ application / gzip”-tar是压缩文件,它不是official media type
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。