gpt4 book ai didi

php - Apache 读取 ZIP 文件而不是下载

转载 作者:行者123 更新时间:2023-12-04 19:03:17 25 4
gpt4 key购买 nike

我的脚本有问题,当我在创建后尝试下载 ZIP 文件时 - apache 读取它们而不是下载!

我使用 zipstream.php 类(https://github.com/maennchen/ZipStream-PHP)

如何配置 apache(在 Ubuntu 上运行)以允许下载带有 ZIP 扩展名的文件?

谢谢 !

我正在使用的代码:

<?php
if($_GET['download'] == "ok")
{

$id = $_GET['id'];

$content = "TEST";

$mysql = $db_1->query("select result from testing where id='$id'");
$row = mysql_fetch_assoc($mysql);
$content .= $row['result'];

$file_opt = array(
'time' => time() - 2 * 3600,
'comment' => 'Simple Comment !',
);

$zip = new ZipStream('test.zip', array(
'comment' => 'Simple Comment !'
));

$zip->add_file('test.txt', $content, $file_opt);
$zip->finish();

exit;

}

注:问题是当我从 JQUERY 调用文件时,他不会下载,但是当我直接浏览它时,他会正确下载!

最佳答案

您可能忘记在回显内容之前设置 zip header 。在打印 zip 内容之前尝试此操作:

header('Content-Type: application/zip');
header('Content-Disposition: attachment; filename="myFileName.zip"');

更新 :您的库似乎有一个正确的方法来发送 zip header 。尝试改用这个:
$zip = new ZipStream('test.zip', array(
'comment' => 'Simple Comment !',
'send_http_headers' => true,
));

关于php - Apache 读取 ZIP 文件而不是下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25808151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com