gpt4 book ai didi

php - 如何隐藏实际的下载文件夹位置

转载 作者:行者123 更新时间:2023-12-03 00:36:58 25 4
gpt4 key购买 nike

我想隐藏下载文件夹位置,以便用户下载文件时看不到该位置。我认为这可以使用 .htaccess 文件来完成,但我该如何做到这一点?或者如何使用 PHP 来完成此操作?

最佳答案

这就是我在 PHP 中的做法:

<?php
$fakeFileName= "fakeFileName.zip";
$realFileName = "realFileName.zip";

$file = "downloadFolder/".$realFileName;
$fp = fopen($file, 'rb');

header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=$fakeFileName");
header("Content-Length: " . filesize($file));
fpassthru($fp);
?>

此外,如果您不希望任何人访问该文件位置,请将名为 .htaccess 的文件放入您的下载文件夹中,其中仅包含以下内容:

deny from all

我稍微改变了代码。首先,当我说假文件名和真实文件名时,假文件名是下载程序下载文件的名称,真实文件名是服务器上下载文件夹中实际文件的名称。

此外,我还会检查以确保用户已登录并且能够下载该文件。如果他选择下载文件,则会在新选项卡中调用 PHP 文件(带有上面的下载代码),然后在文件末尾有以下行:

exit;

因此,当他点击下载链接时,新选项卡中会快速弹出一个空白页面,然后快速退出并开始下载。

编辑:下载链接如下所示:

<a href="simpleDown.php?id=<?php echo $_GET['id']; ?>" target="_blank">Download!</a>

其中id是数据库中下载的id,在上面的下载脚本中我找到了具有该id的条目,然后获取其真实文件名和假文件名。不过,您可以在没有数据库的情况下执行此操作。

关于php - 如何隐藏实际的下载文件夹位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10997516/

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