我是网络开发新手,我试图了解如何保护某些文件不被用户直接访问。 我想将所有请求重定向到“index.php”,并根据特定条件(例如用户的凭据)授予对包含敏感信息(例如图像)的文件的访问权限。 为此,我创建了一个“.htaccess”文件。 “index.php”、“.htaccess”和“image.png”的路径是“C:\xampp\htdocs\project”。 我还将 httpd.conf 修改为“AllowOverride All”,并且重定向工作正常。 问题是该文件的相对路径不起作用。
“.htaccess”:
RewriteEngine On
RewriteBase /project/
RewriteRule ^(.*)$ index.php
“index.php”:
<body>
<?php
$routes = ["/project/image.png"];
$user_logged_in = true;
if(in_array($_SERVER['REQUEST_URI'], $routes) && $user_logged_in)
echo "<img src=\"image.png\">";
?>
</body>
图像未加载(图像图标损坏)。我怎样才能做到这一点? 我在哪里可以找到有关此主题的适合初学者的文档?
我用很多方法修改了图像路径,但似乎没有任何效果。
保护敏感文件免遭直接 HTTP 访问的技术是将它们放在根目录之上,并根据某些条件(例如用户的凭据)使用 PHP 访问它们,正如 C3roe 所解释的那样。谢谢你,C3roe!