我使用下面的代码保护的zip文件如何保护PHP文件和下载文件链接
<?php
$filename = $_GET["id"];
$path = "directory/{$filename}.zip";
$mm_type="application/octet-stream";
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Type: " . $mm_type);
header("Content-Length: " .(string)(filesize($path)));
header('Content-Disposition: attachment; filename="'.basename($path).'"');
header("Content-Transfer-Encoding: binary\n");
readfile($path);
exit();
?>
直接下载链接是对代码足以保护直接下载链接。我不希望链接通过IDM或其他下载管理器可见。
现在如果我在调用上面的php代码时没有输入id或者输入扭曲代码,服务器会发送一些错误的php文件,指出找不到指定的文件。但该文件揭示了文件的实际位置。在这种情况下如何保护php文件。有什么我可以在htaccess文件中做的吗?
我是php新手。 谢谢
为什么有人知道这个位置很重要?如果你想保护访问,那么要求认证将是一个更好的选择。如果您不希望人们在不通过脚本的情况下下载文件,则该文件本身应该位于网络空间之外。 – cHao