【发布时间】:2019-05-30 19:45:04
【问题描述】:
我正在为我的 Web 应用程序在 Linux Suse 上设置 XAMPP。 在 htdocs 文件夹中,我创建了“上传”文件夹,用于保存用户上传的图像、视频文件。 无论如何,当我尝试使用 URL http://www.my-domain-name/uploads 时,它显示的是直接列表
我尝试将 .httaccess 文件放入“uploads”文件夹中,它没有显示目录列表但我无法访问该文件夹中的文件。
这是我在 .httaccess 文件中的代码。
<IfModule authz_core_module>
Require all denied
</IfModule>
<IfModule !authz_core_module>
Deny from all
</IfModule>
我想从外部隐藏“目录列表”,但我的应用仍然可以访问此文件夹中的所有文件。
【问题讨论】:
-
您可以尝试在上传目录中添加
index.html文件,内容如“拒绝访问”。因此,每当有人尝试直接访问它时,它都会显示“访问被拒绝”消息。 -
不,你描述的不是你想要的。相反,您通常希望阻止对该文件夹的直接访问(但通过将其放在 htdocs 文件夹之外,而不是使用动态配置文件)。您仅使用路由器脚本来实现对文件的访问,这使您可以完全控制所有访问尝试。该脚本接受所需的文件名,并且可以执行您想要确定请求是否被批准的任何检查。如果是这样,那么您将传递文件内容,并可能在其前面加上有用的 http 标头。
-
感谢大家的评论。我可以尝试使用代码,我只是在 .htaccess 文件中的一行“Options FollowSymLinks”中使用此代码。结果如我预期的那样显示。