Php 如何限制查看目录中的文件

Php 如何限制查看目录中的文件,php,apache,Php,Apache,我有一个包含许多敏感pdf文档的目录。如果有人知道文件名,他们可以绕过我的登录系统,像查看图像一样查看文件 如果我将目录从文档根目录中移出,那么在用户登录后,我将如何向用户显示该目录?我需要将请求的文件拉回到文档根目录中,但不确定如何执行此操作 如果除了从根目录中删除目录之外还有其他建议,我也愿意接受。谢谢。通过PHP提供文件,这样您将始终知道谁/何时/将下载什么。加载项.htacces文件如下: RewriteRule ^(dir_name_1|dir_name_2)/? /error/404

我有一个包含许多敏感pdf文档的目录。如果有人知道文件名,他们可以绕过我的登录系统,像查看图像一样查看文件

如果我将目录从文档根目录中移出,那么在用户登录后,我将如何向用户显示该目录?我需要将请求的文件拉回到文档根目录中,但不确定如何执行此操作


如果除了从根目录中删除目录之外还有其他建议,我也愿意接受。谢谢。

通过PHP提供文件,这样您将始终知道谁/何时/将下载什么。

加载项.htacces文件如下:

RewriteRule ^(dir_name_1|dir_name_2)/? /error/404 [L] 重写规则^(目录名称1 |目录名称2)//错误/404[L]
谢谢fabrik,你能给我举个例子吗?我知道我可以用php来做这件事,但是怎么做呢?看看我今天的回答:好的,那么fabrik,如果我使用header(),我还会在PDF上使用file\u get\u内容吗?我认为这只是文本当然,你唯一需要调整的是正确的MIME头,在本例中是
application/pdf
。。谢谢你,我的朋友,谢谢你。如果我使用它,当Apache提供文件时,它不会停止文件吗?或者将用户发送到我的404页面?是,它将停止文件。您可以在用户登录内部应用程序时设置一些cookie,并向重定向添加如下条件
RewriteCond%{HTTP_cookie}!^*cookie名称。*$[NC]
使用PHP的解决方案更灵活;)