为什么在php下载zip文件时下载文件对话框不能出现

在我的项目中,我想下载xxx.zip文件。为什么在php下载zip文件时下载文件对话框不能出现

我检查我的Apache服务器上的文件:

/usr/local/apache2/conf/httpd.conf 

这个文件的MIME只有两个将AddType:

AddType application/x-compress .Z 

AddType application/x-gzip .gz .tgz

这两种类型不支持压缩,所以打击他们我已经补充:

AddType application/zip .zip 

然后,我重新启动httpd服务成功:

直接

<?php 

$file_name="xxx.zip";

header("Cache-Control: no-cache, must-revalidate");

header("Expires: 0");

header("Content-Disposition: attachment; filename=".basename($file_name));

header("Content-Length:".filesize($file_name));

header("Content-Type:application/zip");

readfile($file_name);

exit;

?>

但不走运,xxx.zip我布劳尔开放内容,并有messcy代码,而不是下载对话框中我的网站:

service httpd restart 

我运行PHP下载

@ӓ�����'t�� :�>]x�I�1W`� ���:�V2g�z����m^ ��Ӄ&8�E���l�:�kؖb��uƘ�z���qD���w�4��p��^&���s�����i/ݽ�mUH�F�x[`�:��#Nr��+|�n�i����ό�U#�}=!j�D�4�}=�'ujc�`��}hl�cr�"��T6���Λb��"/ ���k�vo$%��x/y���Q�����n�����Y� 

为什么下载文件对话框不能出现?我的linux服务器,浏览器和数据库使用utf8集。谁能帮我 ?我尝试了其他文件格式,例如:jpeg,png,它们都是直接打开内容而不是下载文件对话框。

回答:

在任何其他输出之前输入您的代码...在我的情况下,我创建了一个单独的页面(download.php?file = file_id_goes_here),然后从files.php中调用该文件。所以没有其他输出之前我的下载...

以上是 为什么在php下载zip文件时下载文件对话框不能出现 的全部内容, 来源链接: utcz.com/qa/260705.html

回到顶部