htaccess不能防止下载

时间:2016-07-22 14:01:03

标签: php .htaccess

我使用php在我的localhost中创建了一个网站,我在我的图片文件夹中放了一个htaccess文件,以防止通过浏览器直接访问该文件。在htaccess我把这个 Deny from All 保护我的图片文件夹,它确实阻止我访问文件夹中的文件,如果我在浏览器中键入文件的直接链接但是当我使用php force时下载并设置文件夹的路径和我的计算机仍可下载的文件名。我怎么能防止这种情况发生?

这是php代码

<?php
 $path="picture/check/";
                  $filename = "checks.png";
                  $actualfilename=$path.$filename;
                  $fakefilename="checks.png";
                  $num = 1;
                   if( $num == 1 ){
                        @readfile($actualfilename);
                        header('Content-type: application/octet-stream');
                        header('Content-Disposition: attachment; filename="' . $fakefilename . '"');
                        header('Content-Transfer-Encoding: binary');
                        header('Content-Length: ' . filesize($actualfilename));
                        header('Accept-Ranges: bytes');
                        exit;
}

,该文件夹位于此文件夹中 来自网站实验1

htdocs/experiment1/index.php/picture/checks.png

如果我把它放在index.php

中,我可以使用上面的代码下载checks.png

但我仍然可以从另一个文件夹下载check.png htdocs/downloads.php(它包含上面的php文件夹,但带有path:/experiment1/picture/checks.png

这意味着当我的网站在线时,人们可以创建一个php文件然后他/她可以下载文件在图片文件夹中,如果他们知道实际文件的路径。我想知道我怎么能防止这种情况发生我尝试使用htaccess命令Deny from all但它不会阻止php文件下载它只是块访问如果把链接放在浏览器中请帮助其重要

0 个答案:

没有答案